拆分字符串没有分隔符并使用vb.net存储在数组中

时间:2012-11-05 10:09:21

标签: vb.net string arrays

变量数据类型是字符串.it包含大于300个字符的字符串值。我想将该字符串拆分为150个字符,并使用vb.net

存储在字符串数组中

我的代码:

msg = t1("fld_msg")
msg1 = msg.Length
For i = 0 To msg.Length - 1
   strarr = msg.Substring(0, 150)
Next

错误:

value of type string cant be converted into one dimensional array

3 个答案:

答案 0 :(得分:1)

Substring返回类型为string的值。

您正在尝试将结果放入数组中。

尝试: -

strarr(0) = msg.Substring(0,150)
strarr(1) = msg.Substring(150)

答案 1 :(得分:1)

你需要一个计数器来增加数组中的单元格

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

答案 2 :(得分:0)

代码中的必要更正是将子字符串值分配给an index of array“strarr(i)”而不是to an array“strarr”。同样采用像(0,XX)这样的子字符串是不正确的。每次从索引0返回一个子字符串时,请改用(i*NumberOfCharactersToInclude,XX)。但这里'XX'也很重要。

例如,

如果字符串有311个字符且XX固定为150,则会导致第三个子字符串出错。所以我建议你选择这个:(假设框架是3.5或以上)

For i As Integer = 0 To len  ' len represents possible no. of substrings
    strarr(i) = New String(msg.Skip(i * 150).Take(150).ToArray)
Next