Pirate scholar 2017-07-10 07:20 采纳率: 22.2%
浏览 1176
已采纳

VB.net 索引和长度必须引用该字符串里的位置,求解答

Try
Dim j As Int16
For i = 0 To 59
For j = 0 To 99
If File.Exists(My.Settings.lidarPath & "\" & mes.szLocation.Substring(1, 1) & mes.DeviceNumber.ToString("00") & TimeStrings & i.ToString("00") & "." & j.ToString("00")) Then
TimeStrings = TimeStrings & i.ToString("00") & "." & j.ToString("00")

                    Else
                        MsgBox("不存在该时刻的文件,请重新选择", MsgBoxStyle.OkOnly + MsgBoxStyle.Exclamation, "提示")
                        Exit Sub
                    End If
                Next
            Next
        Catch ex As Exception
            MsgBox("查找文件异常:" & vbCrLf & "发生异常:" & vbCrLf & ex.ToString & _
                   vbCrLf & "异常来源于:" & ex.Source & _
                   vbCrLf & "提示信息:" & ex.Message)
        End Try

  • 写回答

4条回答 默认 最新

  • 战在春秋 2017-07-10 07:49
    关注

    越界访问错误。

    public string Substring(
        int startIndex, //子字符串开始位置
        int length //子字符串长度
    )
    
    String s = "aaabb";
    String result = s.Substring(3,2);  //结果为bb,注意索引从0开始。
    String result = s.Substring(6,2);  //错误
    String result = s.Substring(3,5);  //错误
    

    参照例子,检查一下mes.szLocation的长度,看看mes.szLocation.Substring(1, 1)是否越界。

    如果对您有帮助,请采纳答案好吗,谢谢!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵