Sto usando VB .NET e so che Union funziona normalmente con ByRef ma in VB, le stringhe vengono generalmente elaborate come se fossero dei tipi di dati primitivi.Perché l'unione non funziona in LINQ rimuovere le voci duplicate?
conseguenza, ecco il problema:
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 contiene:
un
b
c
d
e
2.txt contiene:
b
c
d
e
f
g
h
i
j
Dopo aver eseguito il codice, ottengo:
un
b
c
d
e
b
f
g
h
i
j
Eventuali suggerimenti per rendere la funzione di atto dell'Unione come la sua controparte matematica?
Hai trovato il problema. Grazie mille! –