久久久精_欧美黑人一区_亚洲一区二区三区四区在线观看_日韩欧美理论片_久久伊人操_久久久久久亚洲

【轉載】VBA 讀取/寫入文本文件_編織博客

2013-12-06 13:57 查看博客原文

1、Open 語句?

打開方式有?

Input:以讀取方式打開。

Output:以寫入方式打開。

Append:以追加方式,即添加內容到文件末尾打開。

Binary:以二進制方式打開。

Random:以隨機方式打開,如果未指定方式,則以 Random 方式打開文件。

?Open pathname For mode As [#]filenumber

?Open "c:\a.txt" For Output As #1

filenumber? 是一個有效的文件號,范圍在 1 到 511 之間。

如果 pathname 指定的文件不存在,那么,在用 Append、Binary、Output、或 Random 方式打開文件時,可以建立這一文件。?

2、Close 語句?

語法:Close [filenumberlist]

???? filenumberlist 參數為一個或多個文件號,若省略 filenumberlist,則將關閉 Open 語句打開的所有活動文件。?

說明:打開文件后,必須在使用完后關閉文件。

?

3、EOF 函數?

語法:EOF(filenumber)?

功能:返回一個 Integer,它包含 Boolean 值 True,表明已經到達為 Random 或順序 Input 打開的文件的結尾。

Open "c:\a.txt"? For Input As #1 ‘以讀入方式打開c:\a.txt

??? Do While Not EOF(1)? '未到達結尾
????????????????? Line Input #1, s1???? '讀入一行,放入s1變量中? ? ? ??
?? ?????? Loop
?????? ?Close #1?


4、LOC 函數?

語法:LOC(filenumber)?

功能:返回一個 Long,在已打開的文件中指定當前讀/寫位置。?

Dim MyLocation, MyLine?

Open "TESTFILE" For Binary As #1?? ' 打開剛創建的文件。

Do While MyLocation < LOF(1)?? ' 循環至文件尾。?

MyLine = MyLine & Input(1, #1)?? ' 讀入一個字符到變量中。?

MyLocation = Loc(1)?? ' 取得當前位置。? ' 在立即窗口中顯示。??

Debug.Print MyLine : Tab : MyLocation? Loop? Close #1?? ' 關閉文件。
?

5、Input # 語句??

    語法:Input #filenumber, varlist
    功能:從已打開的順序文件中讀出數據并將數據指定給變量。?(有文字中有不在引號中的,會被認為是分隔符)
    說明:通常用 Write # 將 Input # 語句讀出的數據寫入文件。為了能夠用 Input # 語句將文件的數據正確讀
入到變量中,在將數據寫入文件時,要使用 Write # 語句而不使用 Print # 語句。使用 Write # 語句
可以確保將各個單獨的數據域正確分隔開。?

6、Line Input # 語句??

    語法:Line Input #filenumber, varname?
    功能:從已打開的順序文件中讀出一行并將它分配給 String 變量。?
    說明:通常用 Print # 與 Line Input # 語句配合使用。Line Input # 語句一次只從文件中讀出一個字符,
直到遇到回車符 (Chr(13)) 或回車–換行符 (Chr(13) + Chr(10)) 為止。回車–換行符將被跳過,
而不會被附加到字符串上。?
    7、Input 函數?

語法:Input(number, [#]filenumber),其中number 指定要返回的字符個數。?

功能:返回 String,它包含以 Input 或 Binary 方式打開的文件中的字符。

說明:通常用 Print # 或 Put 將 Input 函數讀出的數據寫入文件。Input 函數只用于以 Input 或

Binary 方式打開的文件。

與 Input # 語句不同,Input 函數返回它所讀出的所有字符,包括逗號、回車符、空白列、

換行符、引號和前導空格等。?

示例:

Dim MyChar,s1

Open "C:\test.txt" For Input As #1

Do While Not EOF(1)?????? ' 循環至文件尾。

??? MyChar = Input(1, #1)????? ' 讀入一個字符。

s1=Input(EOF(1), #1)? '一次讀入全部

??? Debug.Print MyChar????? ' 顯示到立即窗口。

Loop

Close #1?

?

8、Write # 語句??

語法:Write #filenumber, [outputlist]?

功能:將數據寫入順序文件。?

如果省略 outputlist,并在 filenumber 之后加上一個逗號,則會將一個空白行打印到文件中。

多個表達式之間可用空白、分號或逗號隔開。空白和分號等效。?

與 Print # 語句不同,當要將數據寫入文件時,Write # 語句會在項目和用來標記字符串的引號之間插入逗號。?

    9、Print # 語句?

語法:Print #filenumber, [outputlist]?

outputlist 參數的設置如下:

[{Spc(n) | Tab[(n)]}] [expression] [charpos]?

Spc(n) 用來在輸出數據中插入空白字符,而 n 指的是要插入的空白字符數。

Tab(n) 用來將插入點定位在某一絕對列號上,這里,n 是列號。使用無參數的 Tab 將插入點定位在

下一個打印區的起始位置。

expression 要打印的數值表達式或字符串表達式。

charpos 指定下一個字符的插入點。使用分號將插入點定位在上一個顯示字符之后。用 Tab(n) 將

插入點定位在某一絕對的列號上,用無參數的 Tab 將插入點定位在下一個打印區的起始處。如果省略

charpos,則在下一行打印下一個字符。

?

Open "F:\test.txt" For Output As #1???????? ' 打開輸出文件。

Print #1, "This is a test"????????????????? ' 將文本數據寫入文件。

Print #1,?????????????????????????????????? ' 將空白行寫入文件。

Print #1, "Zone 1"; Tab; "Zone 2"?????????? ' 數據寫入兩個區(print zones)。

Print #1, "Hello"; " "; "World"???????????? ' 以空格隔開兩個字符串。

Print #1, Spc(5); "5 leading spaces "?????? ' 在字符串之前寫入五個空格。

Print #1, Tab(10); "Hello"????????????????? ' 將數據寫在第十列。

讀入文本到數組

?

Sub test()
??? Dim a()
??? Dim i As Integer
??? x = CreateObject("scripting.FileSystemObject").OpenTextFile("c:\test.txt", 8).Line
??? ReDim a(x)
??? i = 0
??? Open "c:\test.txt" For Input As #1
??????? Do While Not EOF(1)?? '?循環至文件尾
?????????? i = i + 1
?????????? Line Input #1, a(i)?? ' 讀入一行數據并將其賦予某變量
??????? Loop
??? Close #1
End Sub

新跟帖 (共1 條評論)

查看更多評論。。。

主站蜘蛛池模板: 天天干女人网 | 婷婷色av| 99久久精品一区二区成人 | 一区二区在线电影 | 欧美日韩电影一区二区 | 国产伦精品一区二区三区照片91 | 国产福利91精品一区二区三区 | 日日操夜夜操免费视频 | 日韩高清国产一区在线 | 精品九 | 国产精品久久久久白丝呻吟 | 成人国产免费视频 | 国产成人精品一区二区在线 | 国产精品高清一区二区 | 狠狠操狠狠操 | av看片网站 | 欧美日韩亚洲成人 | 久久国产精品一区二区 | 中文字幕一区二区三区乱码在线 | av最新在线| 极品国产粉嫩av免费观看 | 免费一级毛片 | 久久久久久亚洲一区二区三区蜜臀 | 亚洲综合自拍 | 亚洲日本va在线观看 | 久久综合九色综合网站 | 国外精品视频在线观看 | 人人射av | 精品一区二区在线观看 | 欧美伊人| 一区视频| 榴莲视频成人在线观看 | 久久精品91| 精品一区二区在线观看 | 亚洲国产aⅴ精品一区二区 少妇一级片免费看 | 久久久精品在线观看 | 久久成人免费 | 成人在线免费看 | 特黄视频| 成人午夜影院 | 色毛片|