我最近寫的東西,應該做的伎倆很好,如果代理列表每行包含1個IP不會在,是最後一個空白。
雖然不是最優化的代碼,但它工作得很好,下面是解析約6000個代理列表的一些輸出。
你會使用它這樣。
IO.File.WriteAllText("C:\ProxyOut.txt", ParseProxyList(IO.File.ReadAllText("C:\ProxyIn.txt"), 8080, 80, 431, 13))
編輯:哦,我剛纔讀它是一個文本框,使用不應該是不同的
TextBoxOut.Text = ParseProxyList(TextBoxIn.Text, 8080, 80, 431, 13))
和函數本身:
Private Function ParseProxyList(ByVal list As String, ParamArray ports() As Integer)
Dim splitList() As String = list.Split(vbCrLf)
Dim sb As System.Text.StringBuilder = New System.Text.StringBuilder()
Dim outputLinesCount As Integer = 0
For Each line As String In splitList
Dim bContainsPort As Boolean = False
For Each port As Integer In ports
If line.EndsWith(":" & port.ToString) Then
bContainsPort = True
End If
Next
If bContainsPort = False Then
sb.AppendLine(line)
outputLinesCount += 1
End If
Next
MsgBox(splitList.Count.ToString & "->" & outputLinesCount.ToString & " (" & (splitList.Count - outputLinesCount) & " Removed)")
Return sb.ToString
End Function
**我試着使用StreamReader來做到這一點**請分享你的努力! –
使用讀取器作爲新的StreamReader(o.FileName()) 儘管不reader.EndOfStream 昏暗線作爲字符串= reader.ReadLine() 昏暗X作爲字符串= line.Contains( 「8080」) 對於每個X在NsTextBox1 .Text NsTextBox1.Text = NsTextBox1.Text + X Exit While Next End While End Using – Frank
請編輯您的問題並在其中粘貼代碼。它會幫助他人也理解你的問題! –