将字符串拆分为两个并将其存储在数组中

时间:2012-11-21 06:09:57

标签: arrays vb.net string split

在vb.net.it中使用substring函数拆分字符串时出现错误,显示错误,如对象引用未设置为对象的实例。

code

 phone = t1("fld_phone").ToString
 if phone <> String.Empty Then
   msg = t1("fld_msg")
    msg1 = msg.Length
    Dim Counter As Integer = 0
     For i = 0 To msg.Length - 1 Step 150
      strarr(Counter) = msg.Substring(i, 150)
       Counter += 1
       Next


the len of the msg variable is 312 char.

4 个答案:

答案 0 :(得分:1)

如果你要将它分成两部分,为什么要使用for语句,只需将字符串的长度除以2,然后将其用于第一个子字符串的结尾和第二个字符串的开头。此外,如果您没有启用Option Strict,则应该这样做。因为它是你的错误状态,请确保你已经对所有变量进行了初始化,特别是strarr。

Module Module1

    Sub Main()
        Dim strArr(1) As String
        Dim msg As String = "123456789A123456789B123456789C123456789D"

        strarr(0) = msg.Substring(0, msg.Length \ 2)
        strArr(1) = msg.Substring(msg.Length \ 2)
    End Sub

End Module

答案 1 :(得分:1)

检查 strarr 是否为初始化数组;根据该代码,这应该是错误的位置。

答案 2 :(得分:0)

使用拆分功能与您一起使用代码吗?

答案 3 :(得分:0)

问题出在for循环中。每次循环执行时,你都在增加计数器150。在第一次循环后,我设置为149.在第二次执行时,我等于299.这小于312,只剩下13个字符,你将字符串提升到接下来的150个字符。 这就是它出现错误的原因。