我有一个包含以下文本文件中删除重复项:使用指数
"hello", "say hello"
"hello", "say hi"
"hi", "say hi"
"hi", "good morning"
我想只检查每对有重复的第一个值,如果重复发现除去对。
我想从以前的集合中,对这样的结果:
"hello", "say hello"
"hi", "say hi"
我尝试使用下面的代码,但结果不是我想要的。
Dim SR As New StreamReader("file.txt")
Dim MyArray As New List(Of string)
Dim strLine() As String
Do While SR.Peek <> -1
strLine = SR.ReadLine().Split(","c)
If MyArray.Contains(strLine(0)) = False Then
MyArray.Add(strLine(0) & "," & strline(1))
End If
Loop
如果有人能启发我,将不胜感激!如果你要重写文件
Dim distinctByFirstColumn = From line In File.ReadLines("file.txt")
Let fields = line.Split(","c)
Let firstField = fields(0).Trim()
Group line by firstField Into firstFieldGroup = Group
Select firstFieldGroup.First() ' you want first line of duplicates
:
File.WriteAllLines("file.txt", distinctByFirstColumn.ToList())
但我希望thise领域从未包含逗号本身
你需要在C#中使用它,或者标记是什么? –
如果您使用VB.NET,为什么要标记c#? –
c#或vb.net对我来说都是好的 – jeon