當前位置:
首頁 > 最新 > FSO應用 讀取txt文件

FSO應用 讀取txt文件

FSO讀取txt實例

上節課我們講了關於FSO對象以及他的textstream文本流的一些基本知識點,今天我們就分享一個用FSO對象操作讀取txt文本文件的實例。

下面是一個文本文件,裡面有一些姓名、性別、出生日期等信息,我們需要將裡面種的內容導入到excel文件中。這節課我們講解,在這裡我們採取FSO對象的一些方法來讀取。

實現代碼:

Sub mydata() "讀取文本

Dim fs As FileSystemObject, tx As TextStream

Set fs = CreateObject("scripting.filesystemobject")"後期引用

Set tx = fs.OpenTextFile(ThisWorkbook.Path & "Students.txt", ForReading)

"以只讀方式打開文本文件

s = Split(tx.ReadAll, vbCrLf)"將列分開,變為數組

tx.Close"關閉txt

ReDim ar(1 To UBound(s) + 1)"定義ar動態數組

For i = 0 To UBound(s)

ar(i + 1) = Split(s(i), "")"將每行數據按分割開寫入數組ar

Next

cells.clear"清除已有數據

cr = Application.Transpose(Application.Transpose(ar))

[a1].Resize(UBound(cr), UBound(cr, 2)) = cr"將br數據寫入excel

End sub

運行結果:

open方法讀取

如若想用VBAopen語句打開並讀取txt數據,我們在這裡給出參考代碼。

實現代碼

Sub mydata3() "讀取文本

Open ThisWorkbook.Path & "Students.txt" For Input As #1

"以只讀方式打開文本文件

s = Split(StrConv(InputB(LOF(1), 1), vbUnicode), vbCrLf)

Close #1 "關閉txt

ReDim ar(1 To UBound(s) + 1) "定義ar動態數組

For i = 0 To UBound(s)

ar(i + 1) = Split(s(i), "") "將每行數據按分割開寫入數組ar

Next

cr = Application.Transpose(Application.Transpose(ar))

[a1].Resize(UBound(cr), UBound(cr, 2)) = cr "將br數據寫入excel

End Sub

上述代碼中用到兩個函數:

StrConv(InputB(LOF(1), 1), vbUnicode)

StrConv函數:這個函數是用來在大小寫和Unicode/ANSI之間進行轉換的。Unicode

InputB:對於文本文件中包含的位元組數據要使用InputB函數讀取。

vbCrLf:回車符與換行符連接在一起。

有了這兩個操作txt的簡單例子,以後我們在操作txt文件的時候一定不會那麼無從下手了。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 全球大搜羅 的精彩文章:

關於SAT你不得不知道的那些事兒
你見過你老公哭過嗎?

TAG:全球大搜羅 |