2011-06-28 71 views
0

我正嘗試將字符串中的「-10,00」轉換爲使用瑞典文化的貨幣。這裏是我的代碼:將瑞典語字符串轉換爲貨幣無法正常轉換

ByVal ci As System.Globalization.CultureInfo("sv-SE") 
Convert.ToDecimal("-10,00").ToString("C", ci) 

上述代碼的輸出是:-1.000,00 kr,這是錯誤的。它應該是-10,00 kr。我的方法有什麼問題嗎?

解決方案:

的解決方案是CultureInfo的通入ToDecimal功能作爲第二參數。

ByVal ci As System.Globalization.CultureInfo("sv-SE") 
Convert.ToDecimal("-10,00", ci).ToString("C", ci) 
+0

你不應該調用'Convert.ToDecimal'。 – SLaks

+0

我該怎麼做呢? – vikasde

+0

寫'-1000d'。 – SLaks

回答

0

C格式說明符包含兩個小數位。
要擺脫它們,請使用C0

+0

我試過了,它返回-1.000 kr。它不應該是-10.00kr嗎? – vikasde

+0

'Convert.ToDecimal'不會返回您認爲的內容。使用十進制文字。 – SLaks

+0

我只是試着Convert.ToDecimal(「 - 10,00」),它返回-1000D。 – vikasde