使用VBS訪問外部文本文件一些方法和腳本實例代碼
處理文件用到的常量有:ForReading = 1 ,F(xiàn)orWriting=2,ForAppending=8,用于的操作分別是讀/寫和追加,都要在使用之前用VBS Const來聲明。常用于處理文本文件的方法有:Read(var)—讀var個字符,ReadLine—讀一行,ReadAll—讀整個文件內(nèi)容,SkipLine—跳過本行指向下一行,Write(var)—把字符串var寫入文件,WriteLine(var)—把字符串var和換行符寫入文件,WriteBlankLines(n)—寫入n個換行符。
下面給出幾個利用VBScript訪問外部文件的例子:
1.創(chuàng)建一個新的文本文件,如果文件已經(jīng)存在則報告錯誤:
Rem 在當(dāng)前盤根目錄下創(chuàng)建"測試.txt"并寫入一個字符串
VBS dim fso,file,filename
VBS filename="\測試.txt"
VBS Const ForWriting=2
VBS Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(filename)=-1
VBSCall Call MessageBox("發(fā)現(xiàn)錯誤!!!文件已經(jīng)存在!!!")
Goto over
EndIf
VBS Set file=fso.CreateTextFile(filename,Ture)
VBS file.WriteLine("文件第一行,這是一個測試文件")
VBS file.Close
VBSCall Call MessageBox("測試文件創(chuàng)建成功!!!")
Rem over
EndScript
2.強行寫入文件覆蓋原有內(nèi)容:
Rem 在當(dāng)前盤根目錄下創(chuàng)建"測試.txt"并寫入一個字符串
VBS dim fso,file,filename
VBS filename="\測試.txt"
VBS Const ForWriting=2
VBS Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(filename)=-1
VBSCall Call MessageBox("發(fā)現(xiàn)錯誤!!!文件已經(jīng)存在!!!")
Goto over
EndIf
VBS Set file=fso.CreateTextFile(filename,Ture)
VBS file.WriteLine("文件第一行,這是一個測試文件")
VBS file.Close
VBSCall Call MessageBox("測試文件創(chuàng)建成功!!!")
Rem over
EndScript
3.往文件尾部追加內(nèi)容:
Rem 往當(dāng)前盤根目錄下的文件"測試.txt"末尾追加一個字符串
VBS dim fso,file,filename
VBS filename="\測試.txt"
VBS Const ForAppending=8
VBS Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(filename)=0
VBSCall Call MessageBox("發(fā)現(xiàn)錯誤!!!文件不存在!!!")
Goto over
EndIf
VBS Set file=fso.OpenTextFile(filename,ForAppending)
VBS file.WriteLine("測試追加字符串到文件末尾")
VBS file.Close
VBSCall Call MessageBox("追加字符串到文件成功!!!")
Rem over
EndScript
4.讀取指定文件一行
Rem 從當(dāng)前盤根目錄下的文件"測試.txt"讀一行
VBS dim fso,file,filename,text
VBS filename="\測試.txt"
VBS Const ForReading=1
VBS Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(filename)=0
VBSCall Call MessageBox("發(fā)現(xiàn)錯誤!!!文件不存在!!!")
Goto over
EndIf
VBS Set file=fso.OpenTextFile(filename,ForReading)
VBS text=file.ReadLine
VBS file.Close
VBS text="從文件"&filename&"讀取行成功!讀到的字符串為:"&text
VBSCall Call MessageBox(text)
Rem over
EndScript
5.從指定文件行讀取2個字符
Rem 從當(dāng)前盤根目錄下的文件"測試.txt"讀取2個字符
VBS dim fso,file,filename,text
VBS filename="\測試.txt"
VBS Const ForReading=1
VBS Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(filename)=0
VBSCall Call MessageBox("發(fā)現(xiàn)錯誤!!!文件不存在!!!")
Goto over
EndIf
VBS Set file=fso.OpenTextFile(filename,ForReading)
VBS text=file.Read(2)
VBS file.Close
VBS text="從文件"&filename&"讀取2個字符成功!讀到的字符為:"&text
VBSCall Call MessageBox(text)
Rem over
EndScript
6. ReadAll讀取整個文件內(nèi)容,大文件太占資源,不建議使用
//使用方法和ReadLine近似
7.SkipLine跳過當(dāng)前行
//使用方法是file.SkipLine,僅用于只讀屬性打開的文件
8.測試文件行結(jié)束/文件結(jié)束
a.測試行結(jié)束
判斷語句
If file.AtEndOfLine=-1
...
EndIf
//表達式為真的時候當(dāng)前指針處于行末
b.測試文件結(jié)束
判斷語句
If file.AtEndOfStream=-1
...
EndIf
//表達式為真的時候當(dāng)前指針處于文件末
9.其他用于文件的函數(shù)或者叫方法功能有
a.file.Column 返回當(dāng)前列號
b.file.Line 返回當(dāng)前行號
c.file.FileExists(filename) 判斷指定文件是否存在
最后強調(diào)一點,打開文件以后一定要記得關(guān)閉,以免發(fā)生數(shù)據(jù)錯誤,丟失數(shù)據(jù)。
您可能感興趣的文章
- 01-10下載文件到本地運行的vbs
- 01-10VBS中的正則表達式的用法大全 <font color=red>原創(chuàng)&
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10VBScript教程 第十一課深入VBScript
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript語法速查及實例說明
- 01-10VBS中Select CASE的其它用法
- 01-10VBScript教程 第七課使用條件語句
- 01-10vbscript 可以按引用傳遞參數(shù)嗎?
- 01-10VBScript教程 第二課在HTML頁面中添加VBscript代碼


閱讀排行
本欄相關(guān)
- 01-10下載文件到本地運行的vbs
- 01-10飄葉千夫指源代碼,又稱qq刷屏器
- 01-10SendKeys參考文檔
- 01-10什么是一個高效的軟件
- 01-10VBS中的正則表達式的用法大全 &l
- 01-10exe2swf 工具(Adodb.Stream版)
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript教程 第十一課深入VBScript
- 01-10VBScript語法速查及實例說明
隨機閱讀
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10delphi制作wav文件的方法
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10C#中split用法實例總結(jié)
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文