日期:2014-05-20  浏览次数:20461 次

请问3/2如何等于出“1,5”(中间是逗号)?
本人目前做一个挪威项目,可能是系统环境的不同,导致了错误(但我们现在无法实现和客户一模一样的环境,客户只说是英文版的),所以只能猜测,客户发过来的数据确实是“1.5”变成了“1,5”,我改了区域性设置,也没能弄出和客户一样的BUG

请大家帮帮我,如何设置你的系统,能让.NET运算出“1逗号5”来,谢谢!

------解决方案--------------------
是winxp吗?
------解决方案--------------------
沙发,帮顶!
------解决方案--------------------
我感觉不太可能~
------解决方案--------------------
见鬼了....
------解决方案--------------------
运算结果是数字
如果要得到字符串,那是格式化输出的问题
------解决方案--------------------
而且整数运算的结果是整数
------解决方案--------------------
我觉得你可能要装一个挪威版的操作系统才行呢。会不会是和发布的.NET Framework的版本语言有关呢?
------解决方案--------------------
float i = 2/3;
会出现 "1,5 "

没见过 怕是见鬼了
还是 偶 愚钝...
------解决方案--------------------
牛X...
------解决方案--------------------
控制面板-〉区域和语言选项-〉区域选项-> 挪威语(伯克梅尔)
环境:中文win2003 ,vs2005
------解决方案--------------------
控制台程序
Console.WriteLine( "{0} ",(double)3/2);
很多国家就是用,当小数点的
------解决方案--------------------
关注..
------解决方案--------------------
控制面板-〉区域和语言选项-〉区域选项-> 挪威语(伯克梅尔)
先设置这个
------解决方案--------------------
然后,启动一个vs,创建一个控制台程序
Console.WriteLine( "{0} ",(double)3/2);
运行这个,试试
------解决方案--------------------
来长见识。
------解决方案--------------------
和框架没关系,就是地域的问题,我是全中文环境,改个地域就出来了
------解决方案--------------------
.NET Framework内不可以作这个转换,数字在ToString时能够好像DateTime那样要求用某个CultureInfo来格式化。
------解决方案--------------------
...Are You Crazy ?
------解决方案--------------------
replace( ". ", ", ");
------解决方案--------------------
up
------解决方案--------------------
replace( ". ", ", ");
------解决方案--------------------
IE-> 工具-> internet选项-> 语言-> 添加

添加后上下移动,最上的为首选语言
------解决方案--------------------
随便加个页面,放一个textbox
在page_load这样写
double d = (double)3 / 2;
TextBox1.Text = d.ToString();
设置好区域
如果是vs2005,基于文件的网站就可以了
如果是2003,或者基于http的网站,那么在web.config, <system.web> 里加上这个 <globalization culture= "auto "/>
应该就可以出来逗号了
原因就是像cat_hsfz(我的新Blog在http://cathsfz.cnblogs.com) 说的,再作ToString的时候区域设置来格式化数据
但是这个应该不算是bug,这是正常现象
------解决方案--------------------
在电脑的控制面板--区域设置中的数字里面去看看,将,改为.就可以了
------解决方案--------------------