|
| ||
|
| ||
|
|
||
|
|
||
|
所有的文件都必须先打开才能读写,FileSystemObject对象所提供的打开文件的方法有两种:
OpenTextFile:打开文件。 通过FileSystemObject所打开的文件在Scripting模块的对象结构中是一个TextStraem对象。而通过TextStraem对象和各种方法和属性,我们可以进一步读写文件。
参数1、文件名称:建议传入望整路径的文件名称。 参数2、IO模式:可设置成ForReading(=1)、ForWrting(=2)或ForAppending(=8)如果1则打开的文件是只读;如果2打开的文件是可写,而原来的文件的内容会被清除(长度变0);如果8则打开的文件是可写,但原文件的内容不会被清除,数据会最后面开始写入。此参数省略表示ForReading。 参数3、是否自动建立文件:可设置成True或False。如果True则当文件不存在时会自动建立一个新文件;如果设置成False则当文件不存在时就会产生错误。这个参数省略表示为False
Dim fs As New FileSystemObject
参数1、与OpenTextFile的“文件名称“文件名称”参数意义相同。 参数2、是否要覆盖原文件:可设置成True或False。如果True则当文件存在时原文件会被破坏,而以新文件所代替;如果设置成False则当文件存在时就会产生错误。这个参数省略表示覆盖原文件。
其二是:FileExists方法:文件是否存在?
利用CreateTextFile和OpenTextFile所打开(建立)是的文本文件,要存取文本文件,通常采用逐行读取或逐行写入的方式,读取时必须调用TextStream对象的ReadLine方法,写入时必须调用WriteLine方法,具体使用方法如下所示:
s = txtf.ReadLine '读取一行数据,并设置S变量
当读取位置已到达文件的末尾时,如果再调用ReadLine读取数据,将会产生62号错误。要避免这个错误,必须判断TextStream对象的AtEndOfStream属性,如果这个属性为True表示文件位置已达到文件末尾,使用方法如下:
If Not txtf.AtEndOfStream Then '如果还没到文件末尾
ReadAll方法则是一次读取文件的所有内容。如果要读取某个文本文件的所有内容,并将它设置给TextBox,则所编写的子程序如下:
Sub ReadAllToTextBox(txtf As TextStream, tb As TextBox)
Read和ReadLine方法最大的区别在于Read则每次读取N个字符而不是一行: Write与WriteLine方法最大是不同之处在于WinteLine每次象文件写入数据时,都会再多写Chr(13)和Chr(10)(这2个字符表示换行),而Write单纯写入。
下面程序的作用是将输入到文本框的内容存放到g:\y.txt中。
|
||
|
|
|
| |