我遇到了奇怪的情况,在Windows Server 2016中使用double.PositiveInfinity和NegativeInfinity的字符串表示。我们的测试人员发现我的程序(用C#.NET v.4编写)生成了符号'∞&#39 ;而不是" Infinity"应该在文化中做到这一点" en-US"。这阻止了进一步处理数据。 “控制面板”中的“区域和语言”设置显示唯一配置的文化:英语(美国)。我快速制作了一个小应用程序,检查并将文化信息转储到文本文件,并将应用程序交给测试人员在机器上运行。这就是我从他那里得到的:
2018-04-23 15:14:25
现有文化:
符号=' en-US&#39 ;;原住民姓名='英语(美国)&#39 ;;英文名称='英语(美国)';
正无穷大字符串:∞;
负无穷大字符串:-∞;
NaN字符串:NaN
在任何其他计算机(Windows 7,Windows Server 2012)上,我得到:
当前文化:
符号=' en-US&#39 ;;原住民姓名='英语(美国)&#39 ;;英文名称='英语(美国)';
正无穷大字符串:无穷大;
负无穷大字符串:-Infinity;
NaN字符串:NaN
是否有人知道Windows设置中是否存在覆盖文化的Infinity默认表示的位置?或者是Windows 2016打嗝?