什么时候使用不变文化?

Hel*_*rld 5 .net cultureinfo

使用不合适InvariantCulture吗?并且,如果使用,它会影响任何全局设置吗?

Dim hh As Decimal = 123456789.123456

' Is this an appropriate usage?
Dim ll As String = hh.ToString("N4", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 7

使用CultureInfo.InvariantCulture不好吗?

这完全取决于你想要达到的目标.如果你试图将值格式化为机器可读的,那么它几乎总是正确的.如果您尝试为用户设置格式,则可能不合适.

它会影响全球文化吗?

在方法调用中指定不变文化不会改变当前线程的当前文化,如果这是您所担心的.


Ree*_*sey 6

使用CultureInfo.InvariantCulture不好吗?

不,它存在是有原因的.它允许您以一致,可靠的方式解析文本,无论当前的系统文化是什么.

但是,它不应该(通常)用于解析用户输入,而是解析文本,您知道它是以与InvariantCulture期望的相同方式编写的.