Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 使用交替行将多个文本文件合并为一个_Vb.net_Visual Studio 2010 - Fatal编程技术网

Vb.net 使用交替行将多个文本文件合并为一个

Vb.net 使用交替行将多个文本文件合并为一个,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,我已经设法用这段代码将两个文本文件合并在一起 For Each foundFile As String In My.Computer.FileSystem.ReadAllText("path") foundFile = foundFile My.Computer.FileSystem.WriteAllText("path", foundFile, True) Next extraline = vbCrLf My.Co

我已经设法用这段代码将两个文本文件合并在一起

    For Each foundFile As String In
        My.Computer.FileSystem.ReadAllText("path")
        foundFile = foundFile
        My.Computer.FileSystem.WriteAllText("path", foundFile, True)
    Next
    extraline = vbCrLf
    My.Computer.FileSystem.WriteAllText("path", extraline, True)
    My.Computer.FileSystem.WriteAllText("path", extraline, True)
    For Each foundFile2 As String In
                    My.Computer.FileSystem.ReadAllText("path")
        foundFile2 = foundFile2
        My.Computer.FileSystem.WriteAllText("path", foundFile2, True)
    Next
它合并他们,但我想它合并两个文本文件一行一次。比如说

Textdoc1包含

First Line
Third Line
Textdoc2包含

Second Line
Fourth Line
我希望输出文件包含:

First line
Second Line
Third Line
Fourth Line
非常感谢您的帮助,谢谢

您必须使用而不是ReadAllText。这里有一个简单的例子向您展示它是如何工作的(我还没有测试这段代码,它只是供参考)

Dim linesFromFile1()作为字符串
Dim linesFromFile2()作为字符串
将组合行变暗为新列表(字符串)
linesFromFile1=System.IO.File.ReadAllLines(“文件1”)
linesFromFile2=System.IO.File.ReadAllLines(“文件2”)
对于linePos,将其作为整数=0到System.Math.Max(linesFromFile1.Length,linesFromFile2.Length)-1
如果linePos

如果您有非常大的文件,那么我建议您考虑使用。这样,您就可以不用一次加载所有内容。

太完美了,正是我想要的!非常感谢。
Dim linesFromFile1() As String
Dim linesFromFile2() As String
Dim combinedLines As New List(Of String)  

linesFromFile1 = System.IO.File.ReadAllLines("file1")
linesFromFile2 = System.IO.File.ReadAllLines("file2")

For linePos As Integer = 0 To System.Math.Max(linesFromFile1.Length, linesFromFile2.Length) - 1
    If linePos < linesFromFile1.Length Then combinedLines.Add(linesFromFile1(linePos))
    If linePos < linesFromFile2.Length Then combinedLines.Add(linesFromFile2(linePos))
    Next

System.IO.File.WriteAllLines("file3", combinedLines.ToArray())