0
我有一个多语言vb.net应用程序。VB.NET根据文化选择格式化数字
我试图格式化数(ULONG)通过这样根据当前语言货币组分隔显示它:
value.ToString("0.##", CultureInfo.CurrentCulture)
CultrueInfo.CurrentCulture可以是英语(en-GB),西班牙语(ES -ES)或加泰罗尼亚语(ca-ES),具体取决于应用程序中选择的语言。
的问题是以下内容:
- 如果西班牙语(ES-ES)被选中,那么值不正确 格式化为西班牙语语言货币组隔板
','
代替'.'
在"0.##"
指示,所以我需要代替"0,##"
。
例如1200被格式化为是1200,而不是1.200
- 但是,如果我改变掩模
"0,##"
然后如果语言设置为EN-GB, 值是没有正确格式化为货币组分隔符 是"."
而不是","
在"0,##"
所示,所以我需要把"0.##"
来代替。
那么如何自动适应面具以适合所有语言?检测语言并相应地设置正确的掩码?但它适用于少数语言但不适用于很多语言...
这是一个乌龙所以大概是N0 – Steve
因为我不想让小数点,N0有效! – user1624552