第4章 文件和注冊表訪問(2)_第1頁
第4章 文件和注冊表訪問(2)_第2頁
第4章 文件和注冊表訪問(2)_第3頁
第4章 文件和注冊表訪問(2)_第4頁
第4章 文件和注冊表訪問(2)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第一部分用Windows Script Host進(jìn)行腳本編程第4章文件和注冊表訪問讀取和寫入文件腳本可以在一個文本文件中保存其活動的日志腳本可以操作一個外部生成的數(shù)據(jù)文件腳本可以生成數(shù)據(jù)并將數(shù)據(jù)放入到一個文本文件中,以供隨后打印腳本可以充當(dāng)過濾器,就像sort和more命令一樣,讀取標(biāo)準(zhǔn)輸入并寫入標(biāo)準(zhǔn)輸出文本文件輸入和輸出使用一個名為TextStream的對象TextStream 對象文本文件由ASCII或Unicode編碼的字符組成打開一個已有的文件以讀取,使用OpenTextFile :set stream = fso.OpenTextFile(some input file.txt)如果

2、你有一個用于文件的File對象:set stream = file.OpenAsTextStream(forReading)TextStream 對象要創(chuàng)建一個新的文本文件,替換該文件之前的任何版本,使用CreateTextFile并帶有設(shè)置為True 的Overwrite參數(shù)set stream = fso.CreateTextFile(some input file.txt, True)如果你有一個文件對象,可以使用如下的語句:set stream = file.OpenAsTextStream(forWriting)TextStream 對象要創(chuàng)建一個新的文件,或者如果要在已有文件的內(nèi)容

3、之后添加內(nèi)容,使用ForAppending模式的 OpenTextFile,并且將create選項(xiàng)設(shè)置為Trueset stream = fso.OpenTextFile( some input file.txt, ForAppending, True)對于一個File對象,使用如下語句:set stream = file.OpenAsTextStream(forAppending)屬性TextStream對象表示一個文本文件的內(nèi)容,并且記錄了文件中的一個“當(dāng)前位置”。AtEndOfLine布爾值。當(dāng)從一個流讀取的時候,如果這個屬性為True,要讀取的下一個字符是一個回車或換行控制字符。屬性A

4、tEndOfStrean布爾值。當(dāng)從一個流讀取的時候,如果這個屬性為True,整個文件已經(jīng)讀取完了Line返回要讀取或?qū)懭氲南乱恍械男刑枺ㄖ蛔x的)方法Close關(guān)閉流。在關(guān)閉之后,不能夠再使用該對象。Read(nread)從流讀取到nread個字符,并且將其作為一個字符串返回。ReadAll將文件的整個內(nèi)容作為一個字符爭對象返回。方法ReadLine從文件讀取完整的一行文本,直到并包含一個換行字符并且,將文本作為字符串返回回車和換行不會作為返回字符串的一部分Skip nskip跳過流中的下面nskip個字符而不讀取它們。方法SkipLine跳過流中的下一行而不讀取它。Write string向

5、文件寫入一個字符串。WriteBlankLines nlines向文件寫入nlines個空行方法WriteLine string把字符串文本寫入文件,后面跟著一個換行Example file script0408.vbs讀取一個文本的所有非空白行Example file script0409.vbs列出了在Music文件夾中或其任何子文件夾中,找到的所有MP3或 WMA文件的名稱,并將這些文件名列入到一個名為Music Listing.txt的文本文件可擴(kuò)展標(biāo)記語言XML可擴(kuò)展標(biāo)記語言(Extensible Markup Language, XML)XML是人類可讀的信息存儲的最佳格式XHTM

6、L, 遵守XML的嚴(yán)格語法規(guī)則的 HTML Web頁面標(biāo)記系統(tǒng)版本 c+ java bill gates MSXML2.DOMDocumentasync確定當(dāng)Load方法使用的時候整個XML文檔是立即加載(async = False),還是XML系統(tǒng)能夠從 Load返回并隨后解析文檔(async = True)childNodes返回IXMLDOMNode對象的一個集合:這是文檔的內(nèi)容??梢员闅v這個集合以查找內(nèi)容,或者使用 GetElements (只讀的)。documentElement返回文檔的根(最高層級的)元素:如果在文件開始處存在處理指令、注釋或文檔類型的話,這個屬性可能與first

7、Child不同。parseError返回一個IXMLDOMParseError對象,描述了讀入文檔的時候遇到的最后的錯誤。 createCDataSectlon(data)創(chuàng)建了一個CDATA節(jié)點(diǎn),它包含了任意的未解釋的數(shù)據(jù)。createComment(text)創(chuàng)建包含text字符串的一個Comment節(jié)點(diǎn)。createDocumentType(name, publicid, systemid, internalsubset)創(chuàng)建一個Document Type節(jié)點(diǎn),它定義了所使用的DTD。如果使用的話,它必須作為文檔節(jié)點(diǎn)的第 一個子節(jié)點(diǎn)添加。createElement(name)使用給定的n

8、ame創(chuàng)建一個Document Element節(jié)點(diǎn)。createProcessinglnstruction(target, data)創(chuàng)建一條處理指令(標(biāo)簽)。大多數(shù)XML文件以一條target為xml、data類似vereion=1.0 encoding= utf-8 的處理指令開始。getElementsByTagName(name)返回?fù)碛兄付ǖ臉?biāo)簽名的文檔中的所有元素節(jié)點(diǎn)的一個集合。load(XMLSourceFile)載入栺定的XML文件。XMLSourceFile可以是一個文件名或URL。load(XMLSourceFile)和Load類似,但是,直接栽入XML源文本。Save d

9、estination將當(dāng)前XML文檔保存到destination。selectNodes(expression)返回文檔中與指定的搜索表達(dá)式匹配的所有節(jié)點(diǎn)的集合。這個搜索表達(dá)式語法叫做Xpath例如,“/book/name”返回了在book元素中出現(xiàn)的所有name元素selectSingleNode(expression)和selectNodes樣,但是,只返回搜索表達(dá)式所標(biāo)識的任意節(jié)點(diǎn)的第一個節(jié)點(diǎn)。下面的腳本段載入了已有的XML文檔:set xdoc = CreateObject(MSXML2.DOMDocument) xdoc.load(c:mydatatest.xml) MSXML2.I

10、XMLDOMNodeAttributes返回一個IXMLDOmNamedNodeMap列表,它枚舉了元素的屬性。不是VBScript使用for each可 以訪問的集合childNodes返回子節(jié)點(diǎn)的一個集合,這是當(dāng)前元素的內(nèi)容。firstChild返回第一個子節(jié)點(diǎn)(只讀的) lastChild返回一個元素的最后一個子節(jié)點(diǎn)(只讀的)nextSibling元素的列表中的下一個節(jié)點(diǎn)。nodeName對于Element節(jié)點(diǎn),這是元素的標(biāo)簽名稱對于Document、Comment和Text 節(jié)點(diǎn),這是固定的字符串“#document”、“#comment”或“#text”nodeType節(jié)點(diǎn)的類型no

11、deTypeString作為一個描述性字符串的節(jié)點(diǎn)類型(例如“element”或“text”)(只讀的)nodeValue一個Text或Comment節(jié)點(diǎn)的內(nèi)容。從這里找到文檔文本(可讀/可寫)。ownerDocument生成這個節(jié)點(diǎn)的“父”文檔的DOMDocument對象(只讀的)previousSibling列表中的前一個兄弟節(jié)點(diǎn)。appendChild(child)將一個新的子節(jié)點(diǎn)child添加到節(jié)點(diǎn)的子節(jié)點(diǎn)列表中。hasChildNodes如果節(jié)點(diǎn)有任何子節(jié)點(diǎn)的話,返回TrueinsertBefore(newchild, child)在文檔中child節(jié)點(diǎn)的位置之前插入一個新的節(jié)點(diǎn)ne

12、wchildremoveChild(child)從子節(jié)點(diǎn)的列表中,刪除指定的child。replaceChild(newnode, oldnode)需要兩個IXMLDOMNode參數(shù)。在文檔中出現(xiàn)oldnode的任何地方,使用newnode替換掉oldnode。 selectNodesselectSingleNode IXMLDOMNamedNodeMaplength集合中的屬性的數(shù)目getNamedItem(name)找到指定名稱的屬性Item(index)根據(jù)索引號來訪問屬性對象,其范圍從0到集合的長度減去1。set alist = node.attributes for i = 0 to alist.length-1 set attr = list.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論