我想解析或轉換爲C#中的十進制字符串。字符串到十進制解析C#
我需要能夠解析字符串一樣,
$ 123,345,676.8999爲它的等效123345676.90。
我需要在小數點後只有2個地方,並需要適當的四捨五入。
你們可以請建議一種方法來做到上述?基本上,貨幣形式的任何字符串(帶有$,磅符號等)。我應該能夠解析它並將其轉換爲十進制。
我想解析或轉換爲C#中的十進制字符串。字符串到十進制解析C#
我需要能夠解析字符串一樣,
$ 123,345,676.8999爲它的等效123345676.90。
我需要在小數點後只有2個地方,並需要適當的四捨五入。
你們可以請建議一種方法來做到上述?基本上,貨幣形式的任何字符串(帶有$,磅符號等)。我應該能夠解析它並將其轉換爲十進制。
試試這個:
var val = double.Parse("$123,345,676.8999", NumberStyles.AllowThousands | NumberStyles.AllowDecimalPoint | NumberStyles.AllowCurrencySymbol);
val = Math.Round(val, 2);
謝謝你的工作。 – Tendulkar
非常簡單的答案:使用Decimal.Parse()
您可以使用decimal.TryParse
進行解析 - 鏈接對如何解析的作品一些樣品。
http://stackoverflow.com/questions/2753701/convert-any-currency-string-to-double –
的可能重複使用正則表達式。 –
使用_any_貨幣,您需要小心四捨五入。有些貨幣'x.8999'根本不會被舍入。 –