亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > VBScript > 正文

用vbscript實現從文本文件中刪除所有重復行的代碼

2020-06-26 18:09:13
字體:
來源:轉載
供稿:網友
問: 
您好,腳本專家!如何從文本文件中刪除所有重復行? 

-- SW 

答: 
您好,SW。您知道,成為一名腳本專家便意味著開始永無止境地尋找給定問題的最終解決方案。(或者至少在我們的經理問為什么我們似乎從未真正完成什么時,我們是這么告訴他的:“老板,永無止境的尋找過程需要時間!”)這就是為什么我們很高興看到您的問題的原因。不久前 我們回答了一個關于從文本文件中刪除重復名字的類似問題。我們想到的解決方案十分簡單而且效果不錯;只是我們不確定那是最佳解決方案?,F在,很感謝您的問題,我們可以再次嘗試解決這一問題。至于此解決方案是否比我們之前提供的更好/更快/更方便,還是由您來決定吧。 

首先,假定您有一個文本文件,其中每一行都表示一條單獨的記錄。這似乎不太可能,但也許您的文件類似如下: 

This is one of the lines in the text file. 
This is one of the lines in the text file. 
This is another line in the text file. 
This is one of the lines in the text file. 
This is yet another line in the text file. 
This is another line in the text file. 
This is another line in the text file. 
This is one of the lines in the text file. 

您需要一個可以除去所有重復行并提供類似以下輸出的腳本: 

This is one of the lines in the text file. 
This is another line in the text file. 
This is yet another line in the text file. 

SW,您找對地方了: 

Const adOpenStatic = 3 
Const adLockOptimistic = 3 
Const adCmdText = &H0001 

Set objConnection = CreateObject("ADODB.Connection") 
Set objRecordSet = CreateObject("ADODB.Recordset") 

strPathToTextFile = "C:/Scripts/" 
strFile = "Test.txt" 

objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
      "Data Source=" & strPathtoTextFile & ";" & _ 
          "Extended Properties=""text;HDR=NO;FMT=Delimited""" 

objRecordSet.Open "Select DISTINCT * FROM " & strFile, _ 
    objConnection, adOpenStatic, adLockOptimistic, adCmdText 

Do Until objRecordSet.EOF 
    Wscript.Echo objRecordSet.Fields.Item(0).Value    
    objRecordSet.MoveNext 
Loop 

我們發現此腳本有些有趣,因為我們使用“ActiveX 數據對象”(ADO) 并將此文本文件當作數據庫處理。我們不會花費過多的時間詳細說明如何將文本文件當作數據庫處理;如果您想了解有關于此的詳細信息,我們的腳本診所 專欄對此主題進行了深入闡述。現在,要說明的只是我們將使用文本文件 C:/Scripts/Test.txt,我們通過為變量 strPathToTextFile 和 strFile 賦予相應值來表示: 

strPathToTextFile = "C:/Scripts/" 
strFile = "Test.txt" 

那么,這如何能讓我們除去重復行呢?是這樣的,有一種稱為 Select DISTINCT 的數據庫查詢;利用 Select DISTINCT 可以選擇表格中所有不同的(或唯一的)記錄。假設您有一個簡單的數據庫,其中有以下記錄: 


Red 
Red 
Blue 
Red 

如果使用 Select DISTINCT 查詢,您將得到一個只包括唯一記錄的記錄集: 

Red 
Blue 

毫無疑問,您會想:“哇!返回唯一記錄與刪除重復記錄簡直異曲同工。”我們承認確實如此 – 嗯,請等一下:您的想法絕對正確。我們的文本文件構建得就像一個數據庫表,文本文件中的每行都表示一條記錄中的一個字段。如果對此文本文件運行 Select DISTINCT 查詢,我們將只得到唯一的行。事實上,我們將得到如下所示的記錄集: 

This is one of the lines in the text file. 
This is another line in the text file. 
This is yet another line in the text file. 

這剛好就是我們希望返回的信息。您為我們指出了這一點,這很好! 

檢索記錄集后,我們再使用以下代碼將唯一的行回顯到屏幕: 

Do Until objRecordset.EOF 
    Wscript.Echo objRecordset.Fields.Item(0).Value    
    objRecordset.MoveNext 
Loop 

如果我們愿意,也可以使用 FileSystemObject 打開文本文件,然后僅用唯一的行替換現有內容;此種方法與從文本文件中刪除所有重復行效果相同。(如果我們能使用某種 Update 查詢執行此操作,效果會很好,但處理文本文件時,ADO 卻是只讀的。) 

那么,這是從文本文件刪除重復項(無論是姓名還是整個行)的最終結論嗎?唉,誰知道:畢竟,永無止境的尋找過程需要時間?。▽嶋H上,我們發現這只需要大約 2 到 3 天。然后,我們便開始覺得無聊,又繼續做其他事情。) 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91av免费观看91av精品在线| 亚洲精品中文字幕有码专区| 亚洲二区在线播放视频| 国产精品亚洲一区二区三区| 亚洲欧美日韩国产中文| 欧美中文在线视频| 欧美一区二区三区精品电影| 亚洲va欧美va国产综合剧情| 国产一区二区三区视频| 国产日韩欧美夫妻视频在线观看| 亚洲人a成www在线影院| 欧美激情免费看| 国外成人在线直播| 国产精品成熟老女人| 成人网在线免费看| 欧美中文字幕在线观看| 97在线精品视频| 精品国产一区二区在线| 精品动漫一区二区| 日韩在线观看精品| 国产精品444| 久久中文字幕在线视频| 国产美女主播一区| 美女国内精品自产拍在线播放| 欧美电影院免费观看| 国产精品久久久久久久久男| 亚洲天堂免费视频| 亚洲国产精品久久久久| 91美女高潮出水| 国产在线拍偷自揄拍精品| 亚洲国产成人一区| 一区二区三区回区在观看免费视频| 国产色综合天天综合网| 欧美亚洲国产成人精品| 九九热在线精品视频| 亚洲人成电影在线播放| 91免费高清视频| 国产精品www色诱视频| 欧美黑人视频一区| 精品欧美一区二区三区| 最新91在线视频| 亚洲精品视频免费在线观看| 国产精品一区=区| 亚洲已满18点击进入在线看片| 久热精品视频在线| 日日狠狠久久偷偷四色综合免费| 91在线观看免费高清| 久久久久久综合网天天| 亚洲第一福利在线观看| 麻豆乱码国产一区二区三区| 欧美一级片在线播放| 国产精品伦子伦免费视频| 国产精品96久久久久久又黄又硬| 国产精品久久久久久av福利软件| 午夜精品一区二区三区在线视| 日韩综合视频在线观看| 欧美成人午夜免费视在线看片| 国产精品一区二区三区久久久| 97视频在线免费观看| 亚洲色图综合网| 51午夜精品视频| 视频在线观看一区二区| 欧美激情视频在线免费观看 欧美视频免费一| 黑人欧美xxxx| 亚洲无线码在线一区观看| 国产精品高潮呻吟视频| 亚洲一区二区三区四区视频| 国产精品视频精品| 亚洲福利视频久久| 欧美裸体xxxx| 欧美性极品xxxx做受| 欧美另类精品xxxx孕妇| 91久久精品一区| 97精品久久久中文字幕免费| 欧美日韩亚洲91| 国产在线播放不卡| 亚洲韩国日本中文字幕| 久久视频在线看| 91亚洲永久免费精品| 亚洲精品久久久久| 国产一区二区丝袜高跟鞋图片| 欧美第一黄网免费网站| 国产精品中文字幕在线观看| 国产欧美一区二区三区四区| 俺去了亚洲欧美日韩| 久久精品国产亚洲| 亚洲大胆人体视频| 国产不卡av在线免费观看| 亚洲国产精品久久91精品| 亚洲国产日韩欧美在线图片| 日韩美女在线观看| 日韩欧美中文在线| 国产亚洲精品一区二区| 中文字幕亚洲欧美在线| 97在线看免费观看视频在线观看| 日韩最新av在线| 欧美最猛性xxxxx免费| 2020久久国产精品| 国产精品99久久久久久人| 成人免费在线网址| 久久躁日日躁aaaaxxxx| 亚洲精品中文字幕有码专区| 成人午夜两性视频| 亚洲最新av在线| 成人羞羞国产免费| 亚洲精品久久久久久久久久久久| 亚洲精品一区二区久| 欧美日韩亚洲视频| 欧美丰满少妇xxxxx做受| 久久精品国产欧美激情| 国产午夜精品免费一区二区三区| 在线观看精品国产视频| 中文精品99久久国产香蕉| 97久久精品在线| 国产精品第100页| 欧美视频在线观看免费网址| 欧美激情精品久久久久久变态| 国产精品极品尤物在线观看| 成人免费观看网址| 欧美激情精品久久久久| 精品国产一区二区在线| 国模gogo一区二区大胆私拍| 亚洲专区在线视频| 日韩美女福利视频| 亚洲影院色在线观看免费| 亚洲日本中文字幕免费在线不卡| 欧美另类69精品久久久久9999| 久久久爽爽爽美女图片| 成人久久精品视频| 亚洲小视频在线| 欧美大片在线免费观看| 久久久久久久久久av| 亚洲福利视频免费观看| 国产91色在线播放| 欧美色视频日本高清在线观看| 久久久久免费精品国产| 国产亚洲a∨片在线观看| 久久久久久美女| 韩国视频理论视频久久| 久久99国产精品自在自在app| 亚洲女人初尝黑人巨大| 91免费版网站入口| 国产精品入口夜色视频大尺度| 国产精品久久久久久久久久| 欧美日韩ab片| 日韩精品中文字幕在线观看| 亚洲精品国产精品久久清纯直播| 日韩高清电影免费观看完整版| 在线a欧美视频| 狠狠色香婷婷久久亚洲精品| 久久久久亚洲精品| 久久久久久97| 色妞欧美日韩在线| 久久精品久久久久久国产 免费| 国产一区二区三区在线观看视频| 青青草原成人在线视频| 日韩欧美高清在线视频| 日韩精品免费视频| 国产亚洲美女精品久久久| 欧美乱妇高清无乱码| 国产香蕉97碰碰久久人人| 97在线精品国自产拍中文| 精品久久香蕉国产线看观看亚洲| 亚洲欧洲在线观看|