如果我們使用C,N,P等內置格式,String.Format是否可以使用2種方式: ......它會將區域設置考慮在內? 如果我們使用自定義格式代碼(如#,## 0.000),它將不考慮區域設置?String.Format是否考慮locale或不?
在我的代碼中,我使用的方法是這樣
的String.Format( 「{0:### 0000}」,值);
因爲我國使用逗號作爲小數點分隔
但結果仍是:1,234.500,如果它認爲作爲點小數點分隔符。
請幫忙!
如果我們使用C,N,P等內置格式,String.Format是否可以使用2種方式: ......它會將區域設置考慮在內? 如果我們使用自定義格式代碼(如#,## 0.000),它將不考慮區域設置?String.Format是否考慮locale或不?
在我的代碼中,我使用的方法是這樣
的String.Format( 「{0:### 0000}」,值);
因爲我國使用逗號作爲小數點分隔
但結果仍是:1,234.500,如果它認爲作爲點小數點分隔符。
請幫忙!
你想用CultureInfo:
value.ToString("N", new CultureInfo("vn-VN"));
String.Format(new CultureInfo("vi-VN"), "N", value);
既然你在河內是(從配置文件),我用越南的代碼,這是vn-VN
。
This Works。
IFormatProvider iFormatProvider = new System.Globalization.CultureInfo("es-ES");
string s = value.ToString("#,##0.000", iFormatProvider);
string s2 = string.Format(iFormatProvider, "{0:#,##0.000}", val)
注意,,
和.
使用的是「標準」 EN-US風格,但.ToString()
和string.Format()
與格式提供做正確的事。
你有沒有打擾過看String.Format的文檔? – 2009-07-30 02:35:42