Vb.net 从一个文本文件提取特定行到另一个文本文件
我想从一个文本文件提取一些特定的行到另一个文本文件。我正在使用以下代码Vb.net 从一个文本文件提取特定行到另一个文本文件,vb.net,Vb.net,我想从一个文本文件提取一些特定的行到另一个文本文件。我正在使用以下代码 Imports System.IO Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim Tr As IO.TextReader = System.IO.File.OpenText("C:
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Tr As IO.TextReader = System.IO.File.OpenText("C:\Assignment.txt")
For c As Integer = 1 To 10
If c = 7 Then
Dim MyFileLine As String = Split(Tr.ReadToEnd(), vbCrLf)(c) & vbCrLf
Tr.Close()
Dim TW As System.IO.TextWriter
'Create a Text file and load it into the TextWriter
TW = System.IO.File.CreateText("C:\Assignment1.txt")
TW.WriteLine(MyFileLine)
'Flush the text to the file
TW.Flush()
'Close the File
TW.Close()
End If
Next c
End Sub
End Class
但是这段代码只提取第7行,我想提取第8行、第9行、第10行、第14行、第15行、第16行。请指导我正确的解决方案。提前谢谢。这里似乎有几个问题。我将纠正这些错误,然后解释如下:
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim currentLine As String
Dim lineCounter As Integer = 1
Dim lineNumbersRequired As List(Of Integer) = New List(Of Integer)
lineNumbersRequired.Add(7)
lineNumbersRequired.Add(8)
lineNumbersRequired.Add(9)
lineNumbersRequired.Add(10)
lineNumbersRequired.Add(14)
lineNumbersRequired.Add(15)
lineNumbersRequired.Add(16)
Dim TW As System.IO.TextWriter
'Create a Text file and load it into the TextWriter
TW = System.IO.File.CreateText("C:\Assignment1.txt")
Using Tr As IO.TextReader = New IO.StreamReader("C:\Assignment.txt")
While Not Tr.EndOfStream
If lineNumbersRequired.Contains(lineCounter) Then
Dim MyFileLine As String = Split(currentLine, vbCrLf)(c) & vbCrLf
TW.WriteLine(MyFileLine)
End If
lineCounter = lineCounter + 1
End While
End Using
TW.Flush()
'Close the File
TW.Close()
End Sub
End Class
注意:代码未经测试,但如果确实出现一些编译错误,则应该非常接近
好吧,那就简单介绍一下我在这里做的事情:
让我知道你进展如何,如果你需要更多的解释,请询问。这里似乎有几个问题。我将纠正这些错误,然后解释如下:
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim currentLine As String
Dim lineCounter As Integer = 1
Dim lineNumbersRequired As List(Of Integer) = New List(Of Integer)
lineNumbersRequired.Add(7)
lineNumbersRequired.Add(8)
lineNumbersRequired.Add(9)
lineNumbersRequired.Add(10)
lineNumbersRequired.Add(14)
lineNumbersRequired.Add(15)
lineNumbersRequired.Add(16)
Dim TW As System.IO.TextWriter
'Create a Text file and load it into the TextWriter
TW = System.IO.File.CreateText("C:\Assignment1.txt")
Using Tr As IO.TextReader = New IO.StreamReader("C:\Assignment.txt")
While Not Tr.EndOfStream
If lineNumbersRequired.Contains(lineCounter) Then
Dim MyFileLine As String = Split(currentLine, vbCrLf)(c) & vbCrLf
TW.WriteLine(MyFileLine)
End If
lineCounter = lineCounter + 1
End While
End Using
TW.Flush()
'Close the File
TW.Close()
End Sub
End Class
注意:代码未经测试,但如果确实出现一些编译错误,则应该非常接近
好吧,那就简单介绍一下我在这里做的事情:
让我知道你进展如何,如果你需要更多的解释,请询问。我已经更改了代码,并使用语句实现了一个
,以清除文本阅读器
。对不起,我是从C#转换过来的!好的,现在让我来讨论另一个问题,,,如果我想从某个html页面复制某些行,那么我应该编写什么代码???这真的是另一个问题,因为它不像这个问题那么直接。我会发布另一个问题,并将此问题标记为已回答/投票,如果它有助于解决您原来的问题。我已更改了代码,并使用
语句实现了一个,以在之后清除文本阅读器
。对不起,我是从C#转换过来的!好的,现在让我来讨论另一个问题,,,如果我想从某个html页面复制某些行,那么我应该编写什么代码???这真的是另一个问题,因为它不像这个问题那么直接。我会发布另一个问题,并将这个问题标记为已回答/投票,如果它有助于解决您原来的问题。