如何从文本文件中删除重复的行并写入另一个?

时间:2014-06-18 15:04:58

标签: .net vbscript

我正在尝试读取txt文件,获取未排序文本文件的所有重复行并将其写入另一个txt文件。我是编程的初学者,所以请放轻松。

到目前为止我的代码:

Options Explicit
Const ForReading = 1
Const ForWriting = 2

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Users\A352592\Desktop\list01.txt", ForReading)

Set Dict = CreateObject("Scripting.Dictionary")
Do until objInputFile.atEndOfStream
    strCurrentLine = objInputFile.ReadLine
    If not Dict.Exists(strCurrentLine) then 
        objOutputFile.WriteLine strCurrentLine
        Dict.Add strCurrentLine,strCurrentLine
    End if 
Loop

文本文件的示例:

(1) = "example 4"
(1) = "example 6"
(1) = "example 4"
(1) = "example 2"

如何删除(1) = "example 4"行并将其写入新文本文件?

1 个答案:

答案 0 :(得分:1)

您需要打开第二个输出文件(您不要在代码中打开第一个输出文件,BTW,所以它实际上应该引发错误):

Set objOutputFile2 = objFSO.OpenTextFile("C:\output02.txt", 2, True)

并添加一个处理替代案例的Else分支(字典中已存在行):

If Not Dict.Exists(strCurrentLine) Then
  ...
Else
  objOutputFile2.WriteLine strCurrentLine
End If
相关问题