VB.NET中 从字符串“XX”到类型“Double”的转换无效
来源:互联网 发布:金蝶软件电话 编辑:程序博客网 时间:2024/05/23 19:19
最近在做一个vb.net写的一个网站,有一次同学有个问题问我,说程序总是抛出“从字符串“aa”到类型“Double”的转换无效”的错误。我过去一看是个操作数据库的函数,我一开始想到的就是给参数赋值赋错了,引发的数据库的错误。然后就是一通找数据库错误,但是找了半天发现写库的操作没有这问题,百思不得其解,数据库根本就没有Double类型的字段但是它却抛出这个错误来,真是奇怪。
后来逐行调试看了程序发现程序是错在一个数字型的变量和一个字符型的变量的连接上,我就不贴出原程序了,现简化如下:
Dim iTemp As Integer = 3
Dim strTemp As String = "aa"
Response.Write(strTemp + iTemp)
这样逻辑的语句我们在C#里经常写,在C#里书写如下:
string strTemp = "aa";
int iTemp = 3;
Response.Write(strTemp + iTemp);
在C#里同样的程序却不会抛出这个“从字符串“aa”到类型“Double”的转换无效”的错误。
VB.net 和 C#到底相差在哪里呢?
一个字符串型的变量和一个数值型的变量相加,C#会将数值型的变量隐式转换成字符型的然后在将字符型的数据连接起来,可是同样的问题VB.net却是将一个字符型的转化成数值型的,在这个转化过程中,系统会先将字符型的和数值型的都向更高精度的数据类型(Double)转化。但是整型的数据转化成Double的数据不会出问题,但是字符型的数据转化成Double型的就会出问题了,就会抛出那个“从字符串“aa”到类型“Double”的转换无效”的错误了。
vb.net中有连接运算符"&"和"+"
+ 加连接符 如果两个操作数为String就把这两个操作数连接成一个字符串,否则按加号处理。
& 连接符 将操作数据强行转换成String再进行连接运算。
- VB.NET中 从字符串“XX”到类型“Double”的转换无效
- VB.NET -从字符串“xxx”到类型“Double”的转换无效
- VB.NET -从字符串“xxx”到类型“Double”的转换无效
- 【VB.NET机房重构】从字符串到类型double的转换无效?
- VB.NET -从字符串“xxx”到类型“Double”的转换无效
- C++中const修饰二级指针(从类型‘int**’到类型‘const int**’的转换无效)
- C++中const修饰二级指针(从类型‘int**’到类型‘const int**’的转换无效)
- java中 BigDecimal类型的可以转换到double类型
- 2 从字符串到日期类型(Date类型)的转换
- vb中字符串和其他类型之间的转换
- TFS安装:base_packet.cpp:246: 错误:从类型‘const char*’到类型‘pthread_t’的转换无效
- vb.net中类型转换函数
- vb.net中类型转换函数
- vb.net中类型转换函数
- vb.net中类型转换函数
- struts2中Double类型的转换
- 字符串转换成double类型
- [VB.NET]在VB2005中如何将字符串转换为类型
- 【补充】EZ-USB FX2 LP CY7C68013A 开发指南(2)--控制传输 端点0,ep0,ep0buf
- Flex优秀网站欣赏
- 20 Critical Security Controls
- 最少硬币问题
- Vi与Vim的区别
- VB.NET中 从字符串“XX”到类型“Double”的转换无效
- oracle中聚合函数RANK和dense_rank的使用
- 详解FCKeditor文本编辑器在.NET环境下的设置和使用
- 数据验证Web 控件
- 架构师
- extJs——grid数据展现总结(2)
- javascript用法总结17种常用方法啊
- 高效率编辑器 VIM-操作篇
- 怎么给IE设置密码