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

首頁 > 編程 > VBScript > 正文

VBS基礎篇 - vbscript TextStream對象

2020-06-26 17:16:20
字體:
來源:轉載
供稿:網友

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

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湖南省| 苏州市| 棋牌| 静乐县| 台北市| 吉隆县| 年辖:市辖区| 哈尔滨市| 蒙城县| 宜城市| 马龙县| 浏阳市| 闽侯县| 虹口区| 高密市| 柘荣县| 南阳市| 广丰县| 东兰县| 黄冈市| 扬中市| 桦川县| 称多县| 铅山县| 太康县| 贡嘎县| 桐乡市| 黄石市| 丘北县| 固镇县| 来安县| 正镶白旗| 衡山县| 长兴县| 大厂| 清原| 梧州市| 呼和浩特市| 高台县| 塘沽区| 罗城|