![](/img/trans.png)
[英].ToString() and .ToString(CultureInfo.CurrentCulture)
[英]ToString() default CultureInfo
我想我理解CultureInfo的用法。
如果我做的很簡單:
const int a = 5;
string b = a.ToString();
它等於:
const int a = 5;
string b = a.ToString(CultureInfo.InvariantCulture);
換句話說,ToString()默認使用InvariantCulture或CurrentCulture嗎?
如果您未指定文化, ToString
將使用CurrentCulture
,而不是InvariantCulture
。
未指定時,ToString()使用CurrentCulture
請參閱: http : //msdn.microsoft.com/en-us/library/6t7dwaa5(v = vs.85).aspx
“返回值的格式為通用數字格式說明符(”G“)和當前文化的NumberFormatInfo。”
所有內置類和數值類型的ToString
實現默認使用CultureInfo.CurrentCulture
文化 ,即當前線程使用的文化。
這意味着當前文化(以及因此您的字符串格式化和解析功能)將因系統而異。 在我看來,這是一個設計錯誤,它在過去曾經被人咬過。 它應該默認為InvariantCulture
並在系統間提供相同的結果,但不幸的是它沒有。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.