我正在编写一个下载器,基本上它的工作原理是我在一个文本文件中放置了一些链接,如下所示:
1 http://127.0.0.1:8080/patch/patches/test1.rar
2 http://127.0.0.1:8080/patch/patches/test2.rar
3 http://127.0.0.1:8080/patch/patches/test3.rar
因此,我使用以下代码通过 vb.net 中的 Web 客户端下载此文本文件:
Dim PatchList = wc.DownloadString("http://127.0.0.1:8080/patch/PatchList.txt").Trim
Dim tLines As String() = PatchList.Split(Environment.NewLine)
For Each NewLine As String In tLines
Dim tVersionAndUrl As String() = NewLine.Split(vbTab)
Dim encText As New System.Text.UTF8Encoding()
Dim btText() As Byte
btText = encText.GetBytes(tVersionAndUrl(0))
If tVersionAndUrl.Length < 2 Then
Exit For
End If
If Integer.Parse(tVersionAndUrl(0)) < Integer.Parse(CVersion.Text) Then
Dim TempPath As String = "\launcher\temp.rar"
My.Computer.Network.DownloadFile(tVersionAndUrl(1), Me.GetFileName(tVersionAndUrl(1)))
CVersion.Text = tVersionAndUrl(0)
End If
Next
MsgBox("Client is up to date")
一切都很好,但唯一的问题是,当它下载文件时,它会在每个数字前放置一个空格,我相信这个空格可能只是一个正常的空格,也可能是由于换行,我无法修剪它,因为当我没有做任何事情时。所以它看起来像这样:
但是第一行很好,没有空间。
我尝试了很多不同的策略来删除它,但我没有成功。
编辑:好吧,我试图确定它是新行还是空格,但似乎两者都不是?
我使用了这段代码:
If tLines.Contains(Environment.NewLine) Then
MsgBox("It's a freaking new line!")
ElseIf tLines.Contains(" ") Then
MsgBox("It's a freaking space!")
Else
MsgBox("There's no new lines or spaces. Huh?")
End If
我得到了最后一个消息框,确认两者都不是。现在我很困惑。
EDIT2:按照这里的要求,我试图删除空格/换行符。
Dim newString As String = tLines.ToString.Remove(Environment.NewLine)
也试过:
Dim newString As String = tLines.ToString.Replace(vbCr, "").Replace(vbLf, "")
我试过了:
Dim NoSpace = Replace(tLines.ToString, Chr(13), vbNullString)
和这个:
Dim TrimmedLines As String = tLines.ToString.Trim