2011-03-01 39 views
1

當我使用正Double值一樣10, 15, 20並使用這個公式轉換爲$:

String Val=Convert.ToDouble("10").ToString("c") 

然後返回當前值,但如果我的價值是-10它將返回($10)。它會自動附加()並在此值之間加上負值double的值。

誰能告訴我如何處理?

+0

可能重複這一方便快捷的參考:http://stackoverflow.com/questions/1001114/string-format0c2-1234-currency-format -treats負號碼-AS-斷定 – 2011-03-01 10:28:54

回答

0
改變

這是播種負數貨幣數量的標準會計方式。 您應該可以通過更改貨幣的Windows設置來爲自己更新此設置。

如果你想有一個明確具體的格式,你可以嘗試

VAR VAL = 10.0D; var str = val.ToString(「$#0。##」)

或類似的。

約翰·希恩都有一套作弊表,其在 http://john-sheehan.com/blog/

1

這是一個系統區域特定設置,通常在代碼中覆蓋它並不是一個好主意,因爲用戶決定在控制面板中用()而不是 - 用 - 來看負片。

如果你真的想,你可以使用的NumberFormatInfo參數的ToString的過載,但不這樣做:)

相關問題