Dav*_*Dev 13 .net c# globalization formatting numbers
我有以下号码: 4.3
我想把这个号码显示4,3
给我们的一些欧洲朋友.
我的印象是以下行可以解决问题:
string ret = string.Format("{0:0,0}", 4.3); // returns "04", not "4,3"
Run Code Online (Sandbox Code Playgroud)
我使用的是不正确的字符串吗?
JDu*_*ley 31
我认为:
string.Format(System.Globalization.CultureInfo.GetCultureInfo("de-DE"), "{0:0.0}", 4.3);
Run Code Online (Sandbox Code Playgroud)
应该做你想做的事.
Luk*_*keH 31
NumberFormatInfo nfi = new NumberFormatInfo();
nfi.NumberDecimalSeparator = ",";
nfi.NumberGroupSeparator = ".";
double num = 4.3;
string ret = num.ToString(nfi); // 4,3
Run Code Online (Sandbox Code Playgroud)
Fox*_*ire 11
这取决于你想做什么.如果您想让整个应用程序为其他语言输出做好准备,请使用
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo ("de-DE");
Run Code Online (Sandbox Code Playgroud)
如果你想要一个混合语言应用程序(这意味着某些输出用一种语言格式化在另一种语言中),你必须使用特定字符串函数的重载,如:
var culture = System.Globalization.CultureInfo.GetCultureInfo("de-DE");
String.Format (culture, "{0:0.0}", 4.3);
Run Code Online (Sandbox Code Playgroud)
如果可能的话,首选方法是首选方法,因为您的应用程序中只需要一行,并且所有内容都符合预期.在第二步中,您必须将culture参数添加到整个应用程序中的每个String输出方法.
归档时间: |
|
查看次数: |
55604 次 |
最近记录: |