首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

强制转换有关问题

2012-01-31 
强制转换问题我要大家解释清楚一点string str 8.00000int a Convert.ToInt32(str)运行环境是Visua

强制转换问题
我要大家解释清楚一点

 string str = "8.00000";
 int a = Convert.ToInt32(str);

运行环境是Visual Studio 2005
这两句代码在运行的时候会报错(错误时字符串格式不正确),我想知道为什么转换不了?

[解决办法]

C# code
string str = "8.00000";            int a = Convert.ToInt32(Convert.ToDouble(str));            Console.WriteLine(a.ToString());
[解决办法]
Int32只接受整数,也就是8
8.0对Int32来说是非法的

你可以用Decimal或Double过渡

string str = "8.00000";
int a = (int)Convert.ToDouble(str);
[解决办法]
int32是整数

string str = "8.0000";
double a = Convert.ToDouble(str);

可以这样来表示!!

Console.WriteLine(Int32.MaxValue);//最大值
Console.WriteLine(Int32.MinValue);//最小值

并不能包含带小数点的字符串转换!

热点排行