使用“Enter”键作为分隔符拆分字符

时间:2013-07-04 08:51:19

标签: .net vb.net

我有一些string值,其中enter键作为其间的分隔符并存储在数据库中。现在我必须使用split函数拆分这些字符串值并将其保存在数组中。

//代码

Dim valuesArray as String()= Field.ListOfValues.Split(?)

我该怎么做?

3 个答案:

答案 0 :(得分:3)

您引用的“Enter”键可能是回车符或换行符或两者。以下使用ReadLine所以这应该做你想要的,并应考虑行尾字符的差异

StreamReader.ReadLine方法

从当前流中读取一行字符并将数据作为字符串返回。

一行被定义为一个字符序列,后跟一个换行符(“\ n”),一个回车符(“\ r”),或一个回车符后面紧跟换行符号(“\ r \ n“个)。返回的字符串不包含终止回车符或换行符。

    Dim valuesList As New List(Of String)

    Using sr As New StreamReader(New System.IO.MemoryStream(System.Text.Encoding.ASCII.GetBytes(Field.ListOfValues)))
        Do Until sr.EndOfStream
            valuesList.Add(sr.ReadLine)
        Loop
    End Using

    'If you really want an array convert it to one here:
    Dim valuesArray As String() = valuesList.ToArray

答案 1 :(得分:1)

因为在Windows中,行以双字符序列<CR><LF>终止,所以需要String.Split overload分割字符串而不是字符:

Dim valuesArray = Field.ListOfValues.Split({vbCrLf}, StringSplitOptions.None)

答案 2 :(得分:0)

试试这个:

输入key = CChar(vbCrLf)

//代码

Dim valuesArray as String()= Field.ListOfValues.Split(CChar(vbCrLf))