我有一个嵌入的文本文件作为资源。内容是:
Apple
Pear
Orange
Run Code Online (Sandbox Code Playgroud)
我试图把它拉成一个List(Of String)但回车和换行符把它搞砸了。
例如我试试这个:
Dim myNames As List(Of String) = My.Resources.TreeNames.Split(CChar(vbCrLf)).ToList
Run Code Online (Sandbox Code Playgroud)
但是正在传递换行符:
"Apple"
vbLf & "Pear"
vbLf & "Orange"
Run Code Online (Sandbox Code Playgroud)
所以我尝试使用环境变量:
Dim myNames As List(Of String) = My.Resources.TreeNames.Split(CChar(Environment.NewLine)).ToList
Run Code Online (Sandbox Code Playgroud)
但这会导致完全相同的输出。
所以我尝试在换行符上拆分它:
Dim myNames As List(Of String) = My.Resources.TreeNames.Split(CChar(vbLf)).ToList
Run Code Online (Sandbox Code Playgroud)
现在正在传递回车符:
"Apple" & vbCr
"Pear" & vbCr
"Orange"
Run Code Online (Sandbox Code Playgroud)
所以我让这个工作的唯一方法是首先用空替换vbCr然后在左边拆分vbLf:
Dim myNames As List(Of String) = Replace(My.Resources.TreeNames, vbCr, "").Split(CChar(vbLf)).ToList
Run Code Online (Sandbox Code Playgroud)
谁能解释为什么?如果我使用以下命令将文件直接拉入字符串:
Dim myNames as String = My.Resources.TreeNames
Run Code Online (Sandbox Code Playgroud)
我得到:
"Apple" & vbCrLf & "Pear" & vbCrLf & "Orange" …Run Code Online (Sandbox Code Playgroud)