日期:2014-05-18 浏览次数:21004 次
string s = "600.000"; int r = (int)double.Parse(s); Response.Write(r);
------解决方案--------------------
字符串转化成别的类型,你首先要确认它是否是转化类型的有效形式
字符串"600.00"明显就不是一个int类型的有效形式,但是double的有效形式,所以可以选double再转int
string str = "600.000";
int i = Convert.ToInt32(Convert.ToDouble(str));
------解决方案--------------------
600.000可以看成整数类型的。它的意思可能是600000,其中的.只是千位分隔符
有的国家的整数写成这样的12,345,666 这种写法也是整数
参见
C# 解析任意格式的数字字符串
http://dotnet.aspx.cc/file/C-Sharp-Parse-Custorm-Format-Number.aspx
------解决方案--------------------
都有见解,如果你要取的数的点号是小数点 那就按照先转换成double再转int好了。但是如果是千分计数的话就把点号替换之后再处理