Dot-Net
文化不變對象 ToString()
如何呼叫
ToString()一個對象並使其使用不變的文化?ToString()實現的對像有重載IConvertible(如 bool、int、float..),但如果有問題的對像不是IConvertible呢?
我認為
IFormattable是相關的介面。它有一個ToString方法可以讓你指定格式提供者,它可以是一種文化。
該類
System.Convert有一個靜態ToString重載,它需要一個object.Convert.ToString(obj, CultureInfo.InvariantCulture);根據我的基準,這大約是速度的兩倍
string.Format(CultureInfo.InvariantCulture, "{0}", value),更重要的是,它看起來更乾淨。但是,如果您已經在建構字元串,我建議您使用 FormattableString.Invariant。FormattableString.Invariant($"Object value: {obj}")