當我使用正Double
值一樣10, 15, 20
並使用這個公式轉換爲$:
String Val=Convert.ToDouble("10").ToString("c")
然後返回當前值,但如果我的價值是-10
它將返回($10)
。它會自動附加()
並在此值之間加上負值double
的值。
誰能告訴我如何處理?
當我使用正Double
值一樣10, 15, 20
並使用這個公式轉換爲$:
String Val=Convert.ToDouble("10").ToString("c")
然後返回當前值,但如果我的價值是-10
它將返回($10)
。它會自動附加()
並在此值之間加上負值double
的值。
誰能告訴我如何處理?
這是播種負數貨幣數量的標準會計方式。 您應該可以通過更改貨幣的Windows設置來爲自己更新此設置。
如果你想有一個明確具體的格式,你可以嘗試
VAR VAL = 10.0D; var str = val.ToString(「$#0。##」)
或類似的。
約翰·希恩都有一套作弊表,其在 http://john-sheehan.com/blog/
這是一個系統區域特定設置,通常在代碼中覆蓋它並不是一個好主意,因爲用戶決定在控制面板中用()而不是 - 用 - 來看負片。
如果你真的想,你可以使用的NumberFormatInfo參數的ToString的過載,但不這樣做:)
您可以通過修改本
System.Treading.Thread.CurrentThread.Culture.NumberFormatInfo.CurrencyNegativePattern = "(${0})";
可能重複這一方便快捷的參考:http://stackoverflow.com/questions/1001114/string-format0c2-1234-currency-format -treats負號碼-AS-斷定 – 2011-03-01 10:28:54