索引超出了数组 Vb.net 的范围


代码

有问题,我不太明白,当我运行时出现错误:"索引在数组边界之外"

Public Function DataSourceConnection_Report()
    If Split(tmpStr, ":")(4) = "1" Then
        mReport.DataSourceConnections(0).SetConnection(Split(tmpStr, ":")(1), "pharmacy", Split(tmpStr, ":")(2), Split(tmpStr, ":")(3))
    Else
        mReport.DataSourceConnections(0).SetConnection(Split(tmpStr, ":")(1), "pharmacy", True)
    End If
    Return 0
End Function
索引

是从零开始的,你知道吗?

嗯,不,,那你怎么改正

也许你想要数组中的第 4 个元素,那么你需要: Split(tmpStr, ":")(3) = "1"

完整代码:

Public Function DataSourceConnection_Report() As Int32
    Dim split As String() = Microsoft.VisualBasic.Split(tmpStr, ":") ' use a variable, then you need to evaluate it only once '
    If split.Length >= 4 Then
        If split(3) = "1" Then
            mReport.DataSourceConnections(0).SetConnection(split(1), "pharmacy", split(2), split(3))
        Else
            mReport.DataSourceConnections(0).SetConnection(split(1), "pharmacy", True)
        End If
    End If
    Return 0
End Function

最新更新