国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

vbs中使用 ADO 讀取所有數據均在一行上的文本文件的代碼

2019-10-26 17:59:24
字體:
來源:轉載
供稿:網友
使用 ADO 讀取所有數據均在一行上的文本文件問:
您好,腳本專家!我有一個固定寬度的文本文件,該文件包含名字(6 個字符)、姓氏(13 個字符)和部門(9 個字符),并且它們均在同一行上。我該如何使用 ADO 來讀取呢?
-- DW
答:
您好,DW。坦白地講,我們認為您不能使用 ADO(ActiveX 數據對象)讀取這樣的文件。ADO 是一種和文本文件進行交互的非常好的方法(有關詳細信息,請參閱文章有關文本文件的 ADO 更多知識(英文)),但是,確實,ADO 有些挑剔:它的每項設置都必須完全正確,否則就會拒絕工作。(不像腳本專家,即使所有事情都已準備就緒,他們還是會拒絕工作。)作為一種數據庫技術,ADO 需要一個“結構良好”(借用 XML 領域的一個術語)的數據庫;它無法直接利用您那樣的文件格式并從中產生數據庫。(在這種情況下,可以將您的巨行分成若干單個記錄。)
但是沒關系;畢竟,我們可以使用雖古老但優秀而可靠的 VBScript 來創建結構良好的數據庫。我們今天要做的就是向您展示如何快速而便捷地將您的巨大數據字符串分割成單個記錄。只需通過將這些單個記錄(即,文本文件中的單個記錄)回顯到屏幕上我們就可以達到目的。不過,您可以將這些記錄段寫到另一個文本文件然后使用 ADO 從其中讀取數據。我們只是幫您開個頭,剩下的就要靠您自己了。
首先,我們假定您已擁有一個類似于下面的文本文件,該文件的字段名稱和兩條記錄包含于同一行之上:
First Last         Dept     Ken   Meyer        Finance  Pilar Ackerman     HR
我們希望最后的結果同下面的顯示更為相似:
First Last         Dept     
Ken   Meyer        Finance  
Pilar Ackerman     HR
這可能嗎?當然可能:
復制代碼 代碼如下:

Const ForReading = 1 
Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objFile = objFSO.OpenTextFile("C:/Scripts/Test.txt", ForReading) 
strContents = objFile.ReadAll 
objFile.Close 
i = False 
Do Until i = True  
    intLength = Len(strContents) 
    If intLength < 28 Then 
        Exit Do 
    End If 
    strLines = strLines & Left(strContents, 28) & vbCrLf 
    strContents = Right(strContents, intLength - 28) 
Loop 
Wscript.Echo strLines 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 登封市| 长丰县| 白山市| 博野县| 太仆寺旗| 集安市| 嘉峪关市| 滨州市| 马龙县| 宝山区| 正宁县| 镶黄旗| 德兴市| 淮安市| 金山区| 柳林县| 柯坪县| 阜阳市| 鹤壁市| 江北区| 昆山市| 扎囊县| 长海县| 从化市| 蒙自县| 岳西县| 南安市| 景德镇市| 陆良县| 阳西县| 隆林| 清远市| 奉贤区| 嘉峪关市| 汝南县| 洛南县| 临江市| 涿州市| 将乐县| 交城县| 富蕴县|