我正在使用 VB .NET,并且我知道 Union 通常可以通过 ByRef 工作,但在 VB 中,字符串通常被当作原始数据类型来处理。
因此,这就是问题所在:
Sub Main()
Dim firstFile, secondFile As String(), resultingFile As New StringBuilder
firstFile = My.Computer.FileSystem.ReadAllText(My.Computer.FileSystem.SpecialDirectories.Desktop & "\1.txt").Split(vbNewLine)
secondFile = My.Computer.FileSystem.ReadAllText(My.Computer.FileSystem.SpecialDirectories.Desktop & "\2.txt").Split(vbNewLine)
For Each line As String In firstFile.Union(secondFile)
resultingFile.AppendLine(line)
Next
My.Computer.FileSystem.WriteAllText(My.Computer.FileSystem.SpecialDirectories.Desktop & "\merged.txt", resultingFile.ToString, True)
End Sub
1.txt 包含:
a
b
c
d
e
2.txt 包含:
b
c
d
e
f
g
h
i
j
运行代码后,我得到:
a
b
c
d
e
b
f
g
h
i
j
有什么建议可以让 Union 函数表现得像它的数学对应物吗?