首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ToString()默认CultureInfo

ToString()默认CultureInfo
EN

Stack Overflow用户
提问于 2013-04-04 18:42:28
回答 3查看 13.1K关注 0票数 18

我想我理解CultureInfo的用法。

如果我做的很简单:

代码语言:javascript
复制
const int a = 5;
string b = a.ToString();

是否等于:

代码语言:javascript
复制
const int a = 5;
string b = a.ToString(CultureInfo.InvariantCulture);

换句话说,默认情况下,InvariantCulture ()使用CurrentCulture还是ToString(),或者两者都不使用?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-04 18:43:13

如果不指定区域性,ToString将使用CurrentCulture而不是InvariantCulture

票数 28
EN

Stack Overflow用户

发布于 2013-04-04 18:43:15

ToString()在未指定时使用CurrentCulture

请参阅:http://msdn.microsoft.com/en-us/library/6t7dwaa5(v=vs.85).aspx

“返回值是用通用数字格式说明符("G")和当前区域性的NumberFormatInfo格式化的。

票数 5
EN

Stack Overflow用户

发布于 2013-04-04 18:46:46

默认情况下,所有内置类和数值类型的ToString实现都使用当前线程使用的区域性 culture

这意味着当前区域性(因此您的字符串格式化和解析功能)将在不同的系统之间有所不同。在我看来,这是一个设计上的错误,它曾经咬过人。它应该默认为InvariantCulture,并且跨系统提供相同的结果,但不幸的是它没有。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15819177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档