Foxtable(狐表)用户栏目专家坐堂 → 字符串转换提示错误问题


  共有1683人关注过本帖树形打印复制链接

主题:字符串转换提示错误问题

帅哥哟,离线,有人找我吗?
lrh9537
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:380 积分:3154 威望:0 精华:0 注册:2012/11/16 12:19:00
字符串转换提示错误问题  发帖心情 Post By:2024/3/23 16:26:00 [显示全部帖子]

如下数据列:证件号码,           残疾证号,                               残疾等级,    残疾类型
41132319521114051541,     41132319521114051541,     41,           肢体一级
41132319820621051952B1, 41132319820621051952B1,  52B1
残疾证号为20位的正常显示,
残疾证号为22位的提示错误如下:
Conversion from string "52B1" to type 'Double' is not valid.
请老师帮忙解决下,谢谢


代码如下:
Dim Result As DialogResult
Dim zt1 As String = "肢体一级"
Dim zt2 As String = "肢体二级"
Result = MessageBox.Show("导入残疾证号吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    For Each dr As DataRow In DataTables("脱贫人口信息表").DataRows
        If dr.isnull("证件号码") = False AndAlso dr("证件号码").length = 20 Then
            dr("残疾证号") = left(dr("证件号码"), 20)
            dr("残疾等级") = Right(dr("证件号码"), 2)
        ElseIf dr.isnull("证件号码") = False AndAlso dr("证件号码").length = 22 Then
            dr("残疾证号") = left(dr("证件号码"), 22)
            dr("残疾等级") = Right(dr("证件号码"), 4)
        End If
        
            If dr("残疾等级") = 41 Then
                dr("残疾类型") = zt1
            ElseIf dr("残疾等级") = 42 Then
                dr("残疾类型") = zt2
            End If
      
    Next
    DataTables("脱贫人口信息表").Save
    MessageBox.Show("残疾证号已全部导入。", "提示")
Else
    MessageBox.Show("残疾证号未全部导入,请重新操作。", "提示")
End If

    
[此贴子已经被作者于2024/3/23 16:29:12编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lrh9537
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:380 积分:3154 威望:0 精华:0 注册:2012/11/16 12:19:00
  发帖心情 Post By:2024/3/23 16:43:00 [显示全部帖子]

就是字符型列
41,    字符串为纯数字
52B1,字符串包含数字和字母,导致无法运行下去,需要解决此问题
[此贴子已经被作者于2024/3/23 16:49:38编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
lrh9537
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:380 积分:3154 威望:0 精华:0 注册:2012/11/16 12:19:00
  发帖心情 Post By:2024/3/23 16:51:00 [显示全部帖子]

这个错误表明尝试将字符串 "52B1" 转换为 Double 类型,但是这个操作是非法的,因为 "52B1" 包含非数字字符 "B"。

 回到顶部