在.net 4.0中,我在web.config中使用了web窗体和IIS8:
<globalization culture="pt-PT" uiCulture="pt-PT" />当我在C#做这件事时:
ltNumber.Text = (12345.12).ToString("N");我明白了:12 345,12,但是输出必须是12.345,12
这开始在windows 10上看起来很糟糕。windows 7一切都很好。有什么不对的?
发布于 2015-08-02 16:44:20
) format specifier使用您的CurrentCulture设置。
这意味着您的CurrentCulture有空白作为NumberGroupSeparator,,作为NumberDecimalSeparator。

作为解决方案,您可以Clone您的CurrentCulture,任意设置这些属性,并在ToString方法中使用该区域性作为第二个参数。就像;
var clone = (CultureInfo) CultureInfo.CurrentCulture.Clone();
clone.NumberFormat.NumberDecimalSeparator = ",";
clone.NumberFormat.NumberGroupSeparator = ".";
ltNumber.Text = (12345.12).ToString("N", clone); // 12.345,12我不认为这些属性是根据操作系统版本进行更改的。所有关于您使用的区域性设置的内容。
https://stackoverflow.com/questions/31774094
复制相似问题