主頁(yè) > 知識(shí)庫(kù) > VBS基礎(chǔ)篇 - vbscript TextStream對(duì)象

VBS基礎(chǔ)篇 - vbscript TextStream對(duì)象

熱門(mén)標(biāo)簽:除了地圖標(biāo)注還有這種生意嗎 神行者美術(shù)館地圖標(biāo)注 如何用機(jī)器人進(jìn)行電銷(xiāo) 東營(yíng)快遞外呼系統(tǒng) 齊齊哈爾高德地圖標(biāo)注店 百度地圖標(biāo)注點(diǎn)距離代碼 佛山真人電銷(xiāo)機(jī)器人廠家 地圖標(biāo)注政府哪個(gè)部門(mén)管 哪里有便宜的地圖標(biāo)注公司

TextStream對(duì)象是用于訪問(wèn)文本文件的對(duì)象,它是FileSystemObject一個(gè)獨(dú)立的附屬對(duì)象,但在使用TextStream對(duì)象時(shí),我們?nèi)砸柚鶩ileSystemObject 對(duì)象或其附屬對(duì)象來(lái)創(chuàng)建一個(gè) TextStream 對(duì)象并訪問(wèn)磁盤(pán)文件的內(nèi)容??梢酝ㄟ^(guò)FileSystemObject 對(duì)象的CreateTextFile()及OpenTextFile(),來(lái)獲取TextStream的對(duì)象句柄。

下面我們來(lái)具體的看看TextStream 對(duì)象的方法及屬性的使用

TextStream對(duì)象的方法

方法 說(shuō)明
Close() 關(guān)閉一個(gè)打開(kāi)的文件
Read(numchars) 從文件中讀出 numchars 個(gè)字符
ReadAll() 作為單個(gè)字符串讀出整個(gè)文件
ReadLine() 作為一個(gè)字符串從文件中讀出一行(直到回車(chē)符和換行)
Skip(numchars) 當(dāng)從文件讀出時(shí)忽略 numchars 個(gè)字符
SkipLine() 當(dāng)從文件讀出時(shí)忽略下一行
Write(string) 向文件寫(xiě)入字符串 string
WriteLine(string) 向文件寫(xiě)入字符串 string(可選)和換行符
WriteBlankLines(n) 向文件寫(xiě)入 n 個(gè)換行符

Close、Write、WriteLine及WriteBlankLines的使用

方法名:Close()

說(shuō)明:關(guān)閉正在打開(kāi)的文件

方法名:WriteLine(string)

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

示例:

Dim strPath,strText
strPath = "C:\testing.txt"
strText = "This is Test !hello word !"
'調(diào)用函數(shù)
Call CreateFile(strPath,strText)
 
Sub CreateFile(strPath,strText)
  Dim objFso,objStream
  '創(chuàng)建FileSystemObject對(duì)象
  Set objFso = CreateObject("Scripting.FileSystemObject")
  '使用CreateTextFile(),來(lái)返回一個(gè)TextStream對(duì)象句柄
  Set objStream = objFso.CreateTextFile(strPath,True)
  '三個(gè)Write的意思為:在文本中寫(xiě)入字符、寫(xiě)入帶換行符的字符、寫(xiě)入3個(gè)換行符
  objStream.Write(strText)
  objStream.WriteLine(strText)
  objStream. WriteBlankLines 3
  '關(guān)閉TextStream對(duì)象
  objStream.Close
End Sub

Read、ReadAll及ReadLine的使用

方法名:Read(numchars)

說(shuō)明:從 TextStream文件中讀入指定數(shù)目的字符并返回結(jié)果字符串。

方法名:ReadAll()

說(shuō)明:讀入全部 TextStream文件并返回結(jié)果字符串。

方法名:ReadLine()

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

示例:

Call CreateFile("c:\test.txt", "This is Test !"  vbCrLf  "hello word !")
 
Sub CreateFile(strPath,strText)
  Dim objFso,objStream
  '創(chuàng)建FileSystemObject對(duì)象
  Set objFso = CreateObject("Scripting.FileSystemObject")
  '使用FileSystemObject對(duì)象的CreateTextFile(),來(lái)返回一個(gè)TextStream對(duì)象句柄
  Set objStream = objFso.CreateTextFile(strPath,True)
  '寫(xiě)入字符
  objStream.WriteLine(strText)
  '讀取字符串分別是:讀取整行、讀取所有、讀取指定數(shù)目的字符
  Msgbox (objStream.ReadLine)
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  Msgbox (objStream.ReadAll)
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  Msgbox (objStream.Read(9))
  '關(guān)閉TextStream對(duì)象
  objStream.Close
End Sub

 Skip、SkipLine的使用

方法名:Skip(numchars)

說(shuō)明:讀取 TextStream文件時(shí)跳過(guò)指定數(shù)目的字符

方法名:SkipLine()

說(shuō)明:當(dāng)讀到 TextStream文件時(shí),跳過(guò)下一行。

示例:

Dim strPath,strText
strPath = "C:\test.txt"
'調(diào)用函數(shù)
Call CreateFile(strPath)
 
Sub CreateFile(strPath)
  Dim objFso,objStream
  '創(chuàng)建FileSystemObject對(duì)象
  Set objFso = CreateObject ("Scripting.FileSystemObject")
  '使用FileSystemObject對(duì)象的CreateTextFile(),來(lái)返回一個(gè)TextStream對(duì)象句柄
  Set objStream = objFso.CreateTextFile(strPath,True)
  '在文本中寫(xiě)入字符
  objStream.Write "This is Test !"  vbCrLf  "hello word !"
  '以只讀的方式打開(kāi)文件
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  '讀取文件時(shí)跳過(guò)5個(gè)字符;或者跳過(guò)當(dāng)前行,讀取下一行
  objStream.Skip(5)
  Msgbox objStream.ReadAll
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  '跳過(guò)第一行
  objStream.SkipLine
  Msgbox objStream.ReadAll
  '關(guān)閉TextStream對(duì)象
  objStream.Close
End Sub

 TextStream對(duì)象的屬性

屬性

說(shuō)明

AtEndOfLine

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

AtEndOfStream

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

Column

從 1 開(kāi)始返回文件中當(dāng)前字符的列號(hào)

Line

從 1 開(kāi)始返回文件中當(dāng)前行的行號(hào)”

AtEndOfLine及AtEndOfStream的使用

兩者間的區(qū)別是:

AtEndOfLine——讀取到當(dāng)前文本行的末尾;

AtEndOfStream——讀取到整個(gè)文本的末尾

示例:

Dim strPath,strText
strPath = "C:\test.txt"
'調(diào)用函數(shù)
Call CreateFile(strPath)
 
Sub CreateFile(strPath)
  Dim objFso,objStream,str
  '創(chuàng)建FileSystemObject對(duì)象
  Set objFso = CreateObject ("Scripting.FileSystemObject")
  '以只讀的方式打開(kāi)文件,如果文件不存在則創(chuàng)建它
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  '如果當(dāng)前的指針不在行末,則讀取文本內(nèi)容
  Do While objStream.AtEndOfLine > true
    str = str + objStream.Read(1)
  Loop
  msgbox str
  str = ""
  Set objStream = objFso.OpenTextFile(strPath,1,true)
  '如果當(dāng)前的指針不在文本末端,則讀取文本內(nèi)容
  Do While objStream.AtEndOfStream > true
    str = str + objStream.Read(1)
  Loop
  MsgBox str
  '關(guān)閉TextStream對(duì)象
  objStream.Close
End Sub

Column及Line的使用

示例:

Call TestTextStream("c:\test.txt")
 
Sub TestTextStream(strPath)
  Dim objFso,objTStream,str
  Set objFso = CreateObject("Scripting.FileSystemObject")
  '以只讀的方式打開(kāi)文件
  Set objTStream = objFso.OpenTextFile(strPath,1)
  '如果當(dāng)前的指針不在整個(gè)文檔的末尾,讀取文本的所有內(nèi)容
  Do While objTStream.AtEndOfStream > true
    objTStream.ReadAll
    str = str + "共有"  objTStream.Line  "行數(shù)據(jù),光標(biāo)最后所在列號(hào)為:" objTStream.Column  vbCrLf
  Loop
  '打印信息
  MsgBox str
End Sub  

文本讀取示例:

  如何讀取文本最后一行數(shù)據(jù)?  

Dim Fso,MyFile
Dim strLine
'創(chuàng)建FileSystemObject對(duì)象
Set Fso = CreateObject("Scripting.FileSystemObject")
'以只讀的方式打開(kāi)文件
Set MyFile = Fso.OpenTextFile("C:\test.txt",1)
'直到到達(dá)文件尾
Do Until MyFile.AtEndOfStream
  '讀取當(dāng)前整行數(shù)據(jù)
  strLine = MyFile.ReadLine
Loop
MyFile.Close
MsgBox strLine

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

Dim Fso,MyFile
Dim strLine
'創(chuàng)建FileSystemObject對(duì)象
Set Fso = CreateObject("Scripting.FileSystemObject")
'以只讀的方式打開(kāi)文件
Set MyFile = Fso.OpenTextFile("C:\test.txt",1)
Do Until MyFile.AtEndOfStream
  '讀取當(dāng)前整行字符串
  strNextLine = MyFile.ReadLine
  '判斷讀取的整行字符串是不是空白
  If Len(strNextLine) > 0 Then
    '不是空白,則賦值
    strLine = strNextLine
  End If
Loop
MyFile.Close
MsgBox strLine

讀取文本指定行內(nèi)容 

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

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

標(biāo)簽:銅川 西安 文山 邢臺(tái) 鶴壁 四平 湖州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《VBS基礎(chǔ)篇 - vbscript TextStream對(duì)象》,本文關(guān)鍵詞  VBS,基礎(chǔ),篇,vbscript,TextStream,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《VBS基礎(chǔ)篇 - vbscript TextStream對(duì)象》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于VBS基礎(chǔ)篇 - vbscript TextStream對(duì)象的相關(guān)信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章