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

首頁 > 編程 > VBScript > 正文

VBS基礎篇 - vbscript TextStream對象

2020-07-26 11:44:23
字體:
來源:轉載
供稿:網友

TextStream對象是用于訪問文本文件的對象,它是FileSystemObject一個獨立的附屬對象,但在使用TextStream對象時,我們仍要借助FileSystemObject 對象或其附屬對象來創建一個 TextStream 對象并訪問磁盤文件的內容。可以通過FileSystemObject 對象的CreateTextFile()及OpenTextFile(),來獲取TextStream的對象句柄。

下面我們來具體的看看TextStream 對象的方法及屬性的使用

TextStream對象的方法

方法 說明
Close() 關閉一個打開的文件
Read(numchars) 從文件中讀出 numchars 個字符
ReadAll() 作為單個字符串讀出整個文件
ReadLine() 作為一個字符串從文件中讀出一行(直到回車符和換行)
Skip(numchars) 當從文件讀出時忽略 numchars 個字符
SkipLine() 當從文件讀出時忽略下一行
Write(string) 向文件寫入字符串 string
WriteLine(string) 向文件寫入字符串 string(可選)和換行符
WriteBlankLines(n) 向文件寫入 n 個換行符

Close、Write、WriteLine及WriteBlankLines的使用

方法名:Close()

說明:關閉正在打開的文件

方法名:WriteLine(string)

說明:向文件寫入字符串 string(可選)和換行符。

示例:

Dim strPath,strTextstrPath = "C:/testing.txt"strText = "This is Test !hello word !"'調用函數Call CreateFile(strPath,strText) Sub CreateFile(strPath,strText)  Dim objFso,objStream  '創建FileSystemObject對象  Set objFso = CreateObject("Scripting.FileSystemObject")  '使用CreateTextFile(),來返回一個TextStream對象句柄  Set objStream = objFso.CreateTextFile(strPath,True)  '三個Write的意思為:在文本中寫入字符、寫入帶換行符的字符、寫入3個換行符  objStream.Write(strText)  objStream.WriteLine(strText)  objStream. WriteBlankLines 3  '關閉TextStream對象  objStream.CloseEnd Sub

Read、ReadAll及ReadLine的使用

方法名:Read(numchars)

說明:從 TextStream文件中讀入指定數目的字符并返回結果字符串。

方法名:ReadAll()

說明:讀入全部 TextStream文件并返回結果字符串。

方法名:ReadLine()

說明:從 TextStream文件中讀入一整行字符(直到下一行,但不包括下一行字符),并返回字符串

示例:

Call CreateFile("c:/test.txt", "This is Test !" & vbCrLf & "hello word !") Sub CreateFile(strPath,strText)  Dim objFso,objStream  '創建FileSystemObject對象  Set objFso = CreateObject("Scripting.FileSystemObject")  '使用FileSystemObject對象的CreateTextFile(),來返回一個TextStream對象句柄  Set objStream = objFso.CreateTextFile(strPath,True)  '寫入字符  objStream.WriteLine(strText)  '讀取字符串分別是:讀取整行、讀取所有、讀取指定數目的字符  Msgbox (objStream.ReadLine)  Set objStream = objFso.OpenTextFile(strPath,1,true)  Msgbox (objStream.ReadAll)  Set objStream = objFso.OpenTextFile(strPath,1,true)  Msgbox (objStream.Read(9))  '關閉TextStream對象  objStream.CloseEnd Sub

 Skip、SkipLine的使用

方法名:Skip(numchars)

說明:讀取 TextStream文件時跳過指定數目的字符

方法名:SkipLine()

說明:當讀到 TextStream文件時,跳過下一行。

示例:

Dim strPath,strTextstrPath = "C:/test.txt"'調用函數Call CreateFile(strPath) Sub CreateFile(strPath)  Dim objFso,objStream  '創建FileSystemObject對象  Set objFso = CreateObject ("Scripting.FileSystemObject")  '使用FileSystemObject對象的CreateTextFile(),來返回一個TextStream對象句柄  Set objStream = objFso.CreateTextFile(strPath,True)  '在文本中寫入字符  objStream.Write "This is Test !" & vbCrLf & "hello word !"  '以只讀的方式打開文件  Set objStream = objFso.OpenTextFile(strPath,1,true)  '讀取文件時跳過5個字符;或者跳過當前行,讀取下一行  objStream.Skip(5)  Msgbox objStream.ReadAll  Set objStream = objFso.OpenTextFile(strPath,1,true)  '跳過第一行  objStream.SkipLine  Msgbox objStream.ReadAll  '關閉TextStream對象  objStream.CloseEnd Sub

 TextStream對象的屬性

屬性

說明

AtEndOfLine

如果文件位置指針在文件中一行的末尾則返回 True

AtEndOfStream

如果文件位置指針在文件的末尾則返回 True

Column

從 1 開始返回文件中當前字符的列號

Line

從 1 開始返回文件中當前行的行號”

AtEndOfLine及AtEndOfStream的使用

兩者間的區別是:

AtEndOfLine――讀取到當前文本行的末尾;

AtEndOfStream――讀取到整個文本的末尾

示例:

Dim strPath,strTextstrPath = "C:/test.txt"'調用函數Call CreateFile(strPath) Sub CreateFile(strPath)  Dim objFso,objStream,str  '創建FileSystemObject對象  Set objFso = CreateObject ("Scripting.FileSystemObject")  '以只讀的方式打開文件,如果文件不存在則創建它  Set objStream = objFso.OpenTextFile(strPath,1,true)  '如果當前的指針不在行末,則讀取文本內容  Do While objStream.AtEndOfLine <> true    str = str + objStream.Read(1)  Loop  msgbox str  str = ""  Set objStream = objFso.OpenTextFile(strPath,1,true)  '如果當前的指針不在文本末端,則讀取文本內容  Do While objStream.AtEndOfStream <> true    str = str + objStream.Read(1)  Loop  MsgBox str  '關閉TextStream對象  objStream.CloseEnd Sub

Column及Line的使用

示例:

Call TestTextStream("c:/test.txt") Sub TestTextStream(strPath)  Dim objFso,objTStream,str  Set objFso = CreateObject("Scripting.FileSystemObject")  '以只讀的方式打開文件  Set objTStream = objFso.OpenTextFile(strPath,1)  '如果當前的指針不在整個文檔的末尾,讀取文本的所有內容  Do While objTStream.AtEndOfStream <> true    objTStream.ReadAll    str = str + "共有" & objTStream.Line & "行數據,光標最后所在列號為:" &objTStream.Column & vbCrLf  Loop  '打印信息  MsgBox strEnd Sub  

文本讀取示例:

  如何讀取文本最后一行數據?  

Dim Fso,MyFileDim strLine'創建FileSystemObject對象Set Fso = CreateObject("Scripting.FileSystemObject")'以只讀的方式打開文件Set MyFile = Fso.OpenTextFile("C:/test.txt",1)'直到到達文件尾Do Until MyFile.AtEndOfStream  '讀取當前整行數據  strLine = MyFile.ReadLineLoopMyFile.CloseMsgBox strLine

如何讀取文本最后一行數據(文件末尾有空行)?  

Dim Fso,MyFileDim strLine'創建FileSystemObject對象Set Fso = CreateObject("Scripting.FileSystemObject")'以只讀的方式打開文件Set MyFile = Fso.OpenTextFile("C:/test.txt",1)Do Until MyFile.AtEndOfStream  '讀取當前整行字符串  strNextLine = MyFile.ReadLine  '判斷讀取的整行字符串是不是空白  If Len(strNextLine) > 0 Then    '不是空白,則賦值    strLine = strNextLine  End IfLoopMyFile.CloseMsgBox strLine

讀取文本指定行內容 

MsgBox TestTextStream("c:/test.txt",1) Function TestTextStream(strPath,IntLine)  Dim Fso,MyFile  Set Fso = CreateObject("Scripting.FileSystemObject")  '以只讀的方式打開文件  Set MyFile = Fso.OpenTextFile(strPath,1)  '如果當前的指針不在整個文檔的末尾,讀取文本的整行內容  Do Until MyFile.AtEndOfStream    TestTextStream = MyFile.ReadLine    IntLine = IntLine - 1    '判斷光標是否已達到指定行,達到則退出函數    If IntLine = 0 Then      Exit Function    End If  LoopEnd Function

這篇文章就結束到這了,需要的朋友可以參考一下。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长武县| 富阳市| 工布江达县| 义马市| 临安市| 什邡市| 碌曲县| 炎陵县| 集安市| 达日县| 赤壁市| 谷城县| 广宗县| 金阳县| 平泉县| 黄浦区| 武冈市| 务川| 张家港市| 孟连| 新绛县| 会宁县| 衢州市| 丽水市| 大城县| 乌鲁木齐市| 靖西县| 桑植县| 大同县| 中西区| 武陟县| 逊克县| 克山县| 汾阳市| 康定县| 许昌县| 龙泉市| 东乌珠穆沁旗| 揭东县| 延庆县| 石林|