用vbs實(shí)現(xiàn)對(duì)文本文件中的項(xiàng)計(jì)數(shù)
更新時(shí)間:2007年04月01日 00:00:00 作者:
問:
嗨,腳本專家!如何向文本文件的頂部添加行?
-- FT
答:
您好,F(xiàn)T。您知道,在亞瑟·柯南·道爾爵士生涯的某一時(shí)刻,他實(shí)際上將夏洛克·福爾摩斯寫死了,他認(rèn)為他已寫完了有關(guān)這個(gè)大偵探所有能寫的一切。公眾的疾呼很快改變了他的想法,他迅速地使夏洛克·福爾摩斯起死回生。(按照所有肥皂劇的那種基本情節(jié)主線一路創(chuàng)作下來(lái)。)
我們腳本專家對(duì)亞瑟·柯南·道爾爵士深感同情。畢竟,我們會(huì)周期性地想,“好了,到這里吧;我們已編寫了有關(guān)文本文件所有能編寫的一切?!蔽覀儎傆写讼敕ǎ土⒖淌盏接嘘P(guān)文本文件的一堆問題,其中包括三個(gè)人所問的同一問題:如何向文件文件的頂部添加行?
很簡(jiǎn)單,我親愛的華生(啊,我親愛的 FT)。所有您需要做的只是使用類似下面的腳本:
Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForReading)
strContents = objFile.ReadAll
objFile.Close
strFirstLine = "This is the new first line in the text file."
strNewContents = strFirstLine & vbCrLf & strContents
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForWriting)
objFile.WriteLine strNewContents
objFile.Close
注意。很有趣的是,在原本小說(shuō)中夏洛克·福爾摩斯從沒有說(shuō)“很簡(jiǎn)單,我親愛的華生”。我們不知道為什么他不那么說(shuō);他就是不那么說(shuō)。
好了,現(xiàn)在游戲已經(jīng)開始了,不是嗎?我們首先創(chuàng)建一對(duì)常量 - ForReading 和 ForWriting,我們將在處理文本文件時(shí)使用這兩個(gè)常量。我們創(chuàng)建一個(gè) FileSystemObject 實(shí)例,然后使用 OpenTextFile 方法打開文件 C:\Scripts\Test.txt 以讀取以下內(nèi)容:
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForReading)
現(xiàn)在文件已打開,我們使用 ReadAll 方法讀取該文件的全部?jī)?nèi)容并將這些內(nèi)容存儲(chǔ)在稱作 strContents 的變量中。然后我們立即關(guān)閉文件 Test.txt。為什么?是這樣,通過 FileSystemObject 可打開文件進(jìn)行讀取或?qū)懭?,但不能同時(shí)進(jìn)行這兩種操作。為向文件頂部添加新的一行,我們將必須對(duì)該文件進(jìn)行寫入;這意味著我們必須重新打開它,但這次是為了寫入。
接下來(lái)我們需要為該文件構(gòu)造新內(nèi)容。我們不能直接向文本文件的頂部添加行;FileSystemObject 只允許向文本文件的末尾添加新行。因此,我們需要做的是在內(nèi)存中創(chuàng)建一個(gè)全新的文件,然后用此新文件替換現(xiàn)有 Test.txt 的內(nèi)容。新文件將由三部分組成:新的第一行;回車-換行;及該文件的現(xiàn)有內(nèi)容。為構(gòu)造此文件,我們首先使用下面的代碼在稱為 strFirstLine 的變量中存儲(chǔ)新的第一行:
strFirstLine = "This is the new first line in the text file."
然后我們使用以下代碼行合并新的第一行、回車-換行(使用 VBScript 常量 vbCrLf)及該文件的現(xiàn)有內(nèi)容(存儲(chǔ)在變量 strContents 中):
strNewContents = strFirstLine & vbCrLf & strContents
現(xiàn)在剩下的工作就是重新打開 Test.txt(這次是為了寫入),然后使用 WriteLine 方法用新文件替換現(xiàn)有內(nèi)容:
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForWriting)
objFile.WriteLine strNewContents
然后我們調(diào)用 Close 方法,就像這樣,大功告成。好了,文件關(guān)閉。嗨,我們只是想要模仿一下夏洛克·福爾摩斯。
說(shuō)到這,您知道夏洛克·福爾摩斯有一個(gè)叫麥克羅夫特的哥哥嗎?這是真的。按照推測(cè)麥克羅夫特很有天賦,但卻因?yàn)樘珣卸鴽]做出什么有趣或有用的事。
嗨,您說(shuō)這聽起來(lái)有點(diǎn)耳熟是何用意?沒關(guān)系;您很可能指的是某個(gè)其他的每天編寫腳本的專欄作家。
嗨,腳本專家!如何向文本文件的頂部添加行?
-- FT
答:
您好,F(xiàn)T。您知道,在亞瑟·柯南·道爾爵士生涯的某一時(shí)刻,他實(shí)際上將夏洛克·福爾摩斯寫死了,他認(rèn)為他已寫完了有關(guān)這個(gè)大偵探所有能寫的一切。公眾的疾呼很快改變了他的想法,他迅速地使夏洛克·福爾摩斯起死回生。(按照所有肥皂劇的那種基本情節(jié)主線一路創(chuàng)作下來(lái)。)
我們腳本專家對(duì)亞瑟·柯南·道爾爵士深感同情。畢竟,我們會(huì)周期性地想,“好了,到這里吧;我們已編寫了有關(guān)文本文件所有能編寫的一切?!蔽覀儎傆写讼敕ǎ土⒖淌盏接嘘P(guān)文本文件的一堆問題,其中包括三個(gè)人所問的同一問題:如何向文件文件的頂部添加行?
很簡(jiǎn)單,我親愛的華生(啊,我親愛的 FT)。所有您需要做的只是使用類似下面的腳本:
復(fù)制代碼 代碼如下:
Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForReading)
strContents = objFile.ReadAll
objFile.Close
strFirstLine = "This is the new first line in the text file."
strNewContents = strFirstLine & vbCrLf & strContents
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForWriting)
objFile.WriteLine strNewContents
objFile.Close
好了,現(xiàn)在游戲已經(jīng)開始了,不是嗎?我們首先創(chuàng)建一對(duì)常量 - ForReading 和 ForWriting,我們將在處理文本文件時(shí)使用這兩個(gè)常量。我們創(chuàng)建一個(gè) FileSystemObject 實(shí)例,然后使用 OpenTextFile 方法打開文件 C:\Scripts\Test.txt 以讀取以下內(nèi)容:
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForReading)
現(xiàn)在文件已打開,我們使用 ReadAll 方法讀取該文件的全部?jī)?nèi)容并將這些內(nèi)容存儲(chǔ)在稱作 strContents 的變量中。然后我們立即關(guān)閉文件 Test.txt。為什么?是這樣,通過 FileSystemObject 可打開文件進(jìn)行讀取或?qū)懭?,但不能同時(shí)進(jìn)行這兩種操作。為向文件頂部添加新的一行,我們將必須對(duì)該文件進(jìn)行寫入;這意味著我們必須重新打開它,但這次是為了寫入。
接下來(lái)我們需要為該文件構(gòu)造新內(nèi)容。我們不能直接向文本文件的頂部添加行;FileSystemObject 只允許向文本文件的末尾添加新行。因此,我們需要做的是在內(nèi)存中創(chuàng)建一個(gè)全新的文件,然后用此新文件替換現(xiàn)有 Test.txt 的內(nèi)容。新文件將由三部分組成:新的第一行;回車-換行;及該文件的現(xiàn)有內(nèi)容。為構(gòu)造此文件,我們首先使用下面的代碼在稱為 strFirstLine 的變量中存儲(chǔ)新的第一行:
strFirstLine = "This is the new first line in the text file."
然后我們使用以下代碼行合并新的第一行、回車-換行(使用 VBScript 常量 vbCrLf)及該文件的現(xiàn)有內(nèi)容(存儲(chǔ)在變量 strContents 中):
strNewContents = strFirstLine & vbCrLf & strContents
現(xiàn)在剩下的工作就是重新打開 Test.txt(這次是為了寫入),然后使用 WriteLine 方法用新文件替換現(xiàn)有內(nèi)容:
Set objFile = objFSO.OpenTextFile("C:\Scripts\Test.txt", ForWriting)
objFile.WriteLine strNewContents
然后我們調(diào)用 Close 方法,就像這樣,大功告成。好了,文件關(guān)閉。嗨,我們只是想要模仿一下夏洛克·福爾摩斯。
說(shuō)到這,您知道夏洛克·福爾摩斯有一個(gè)叫麥克羅夫特的哥哥嗎?這是真的。按照推測(cè)麥克羅夫特很有天賦,但卻因?yàn)樘珣卸鴽]做出什么有趣或有用的事。
嗨,您說(shuō)這聽起來(lái)有點(diǎn)耳熟是何用意?沒關(guān)系;您很可能指的是某個(gè)其他的每天編寫腳本的專欄作家。
相關(guān)文章
vbs腳本實(shí)現(xiàn)下載jre包并靜默安裝的代碼實(shí)例
這篇文章主要介紹了vbs腳本實(shí)現(xiàn)下載jre包并靜默安裝的代碼實(shí)例,通過本文可以學(xué)到VBS中下載遠(yuǎn)程文件的方法、靜默安裝jre包的方法,需要的朋友可以參考下2014-08-08
運(yùn)行vbs腳本報(bào)錯(cuò)無(wú)效字符、中文亂碼的解決方法(編碼問題)
今天在寫一個(gè)vbs的時(shí)候,發(fā)現(xiàn)中文亂碼,后來(lái)寫好代碼正常運(yùn)行的代碼壓縮一下給了同事,發(fā)現(xiàn)報(bào)無(wú)效字符,經(jīng)過驗(yàn)證后發(fā)現(xiàn)原來(lái)是編碼的問題導(dǎo)致,這里就為大家分享一下2019-12-12
使用 Iisftp.vbs 暫停FTP站點(diǎn)的方法
這篇文章主要介紹了使用 Iisftp.vbs 暫停FTP站點(diǎn)的方法,需要的朋友可以參考下2014-07-07
WMI中的Win32_PingStatus類(ping命令實(shí)現(xiàn))
平時(shí)很少用到ping命令,所以這個(gè)類也沒怎么用過,測(cè)試了一下,好像效率比ping要高。計(jì)算ping 100次jb51.net延遲的平均值。2011-01-01
vbscript實(shí)現(xiàn)的根據(jù)不同時(shí)間段顯示不同的歡迎語(yǔ)
頁(yè)面加載時(shí),瀏覽器遇到 Script 標(biāo)記。Script 標(biāo)記可能含有 Script 級(jí)代碼(不包含在過程之中),在對(duì) HTML 頁(yè)面進(jìn)行語(yǔ)法分析時(shí),將執(zhí)行此代碼。此代碼可使用瀏覽器提供的對(duì)象把內(nèi)容寫入頁(yè)面中2013-04-04

