日期:2014-05-18  浏览次数:20418 次

大师们,请教一个问题关于数值类型转换的,谢谢!
是这样的,有一个值从其它地方传过来的,数值是21.21请问我如何把它转换成int32类型,我尝试用Convert.ToInt32()会报错
代码如下
v_amount = Request["v_amount"];

int vALUE = Convert.ToInt32(v_amount) * 100;
string USER_ID = this.Session["USER_ID"].ToString();
class_add_user.onlinpay_balance(vALUE, USER_ID);

编译的时候不会出错,运行的时候就报错,我想应该是数值转换问题,21.21不能直接转换,
请问大师们有何方法能转换成int32的?因为这个要写入数据库必须转换成INT型的才可以!
先谢谢大家啦

------解决方案--------------------
String v_amount=Request["V_amount"].ToString();
------解决方案--------------------
(int)Request["V_amount"].ToString();
------解决方案--------------------
C# code
string v_amount = Request["v_amount"]; 
int a = Convert.ToInt32( Math.Round( (decimal.Parse(str)),0));

------解决方案--------------------
(int)float.Parse(Request["V_amount"])
------解决方案--------------------
直接把21.21字符串转成int型会报错,是因为整型值是不会有个点在里面的
所以要先转成浮点型的,然后再转成int型的