int.Parse(strBalance) 出现FormatException? 刚学习c#,在测试一个实例时出现下面的错误:int nbalance = int.Parse(strBalance);其中strBalance的值是:4800.0000然后用:int nbalance = Convert.ToInt32(strBalance);也是一样的错误:System.FormatException: 输入字符串的格式不正确。请问究竟为什么说是格式不正确呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 int nbalance = int.Parse(strBalance); ==Decimal nbalance = decimal.Parse(strBalance); 你先把4800。0000转成decimal型,再转为int型应该就型了,不能直接转为int型。 其实: string strBalance=ds.Tables["account"].Rows[0]["balance"].ToString(); strBalance来自于SQL SERVER的数据表的balance字段的数据,balance的字段类型是money 所以strBalance的值是"4800.0000" 现在看来是我的这个实例的数据类型选择错误了。 请问在C#中的数据类型,对应于SQL SERVER的money数据类型,应该用哪一种呢? 是decimal吗? 请问在C#中的数据类型,对应于SQL SERVER的money数据类型,应该用哪一种呢? 是decimal吗?==是 Decimal nbalance = decimal.Parse(strBalance); 把int 改成 decimal后,程序调试通过了。这次给我两个感受:1、选择数据类型要小心,有时候书上给的例子未必都是正确的,应该根据对应的规则选择,如money应该对应decimal,虽然实际用到都是整数。2、不是很理解为何从SQL SERVER数据读取的数据,为何不能直接使用,而是那么麻烦,先转成字符,然后再转为实际使用的数据类型,对于从别的编程语言转过来人一下子是比较难理解的。 如果lz稍微了解一点LINQ,就知道这些问题都是.NET 3.5和LINQ所致力于解决的。 可以通过重载运算符decimal或者int,让其支持money类型 别的编程语言,你说的是vbscript之类吧你要是从c/c++转过来绝对不会有这样的疑惑。还是抓抓基础知识吧。估计你看的书,是国人自己写的,用来骗钱的那种,自己都没调试过程序。 呵呵,不好意思,刚接触C#,LINQ还没有了解过。 如果为了预防类似的异常可以用,double.TryParse(,out ),int.TryParse(,out ) EXCEL 表如何转化为WINDOWS程序? 四周半透明阴影边框的窗体要怎么做? winform Access数据库中的表绑定到datagridview出错 如何自动的匹配已注册的图标(类似windows资源管理器)? linq 查询语句 c# 文件名字符 ”<“的问题 紧急求救,建立连接SYBASE数据库系统DSN问题 一个简单的WEB应用程序的错误; 为什么我用this.hide() 会引发closeing事件? 简单问题:如何定义一个程序级的字符串? 求ajax提交表单 简单方式 帮我看看这个错误提示(DX,C#相关)
==
Decimal nbalance = decimal.Parse(strBalance);
string strBalance=ds.Tables["account"].Rows[0]["balance"].ToString(); strBalance来自于SQL SERVER的数据表的balance字段的数据,balance的字段类型是money 所以strBalance的值是"4800.0000" 现在看来是我的这个实例的数据类型选择错误了。 请问在C#中的数据类型,对应于SQL SERVER的money数据类型,应该用哪一种呢? 是decimal吗?
==
是
这次给我两个感受:1、选择数据类型要小心,有时候书上给的例子未必都是正确的,应该根据对应的规则选择,如money应该对应decimal,虽然实际用到都是整数。2、不是很理解为何从SQL SERVER数据读取的数据,为何不能直接使用,而是那么麻烦,先转成字符,然后再转为实际使用的数据类型,对于从别的编程语言转过来人一下子是比较难理解的。
可以通过重载运算符decimal或者int,让其支持money类型
你要是从c/c++转过来绝对不会有这样的疑惑。
还是抓抓基础知识吧。
估计你看的书,是国人自己写的,用来骗钱的那种,自己都没调试过程序。
呵呵,不好意思,刚接触C#,LINQ还没有了解过。