使用VBS访问外部文本文件一些方法和脚本实例代码
2016-06-30来源:易贤网

处理文件用到的常量有:ForReading = 1 ,ForWriting=2,ForAppending=8,用于的操作分别是读/写和追加,都要在使用之前用VBS Const来声明。常用于处理文本文件的方法有:Read(var)—读var个字符,ReadLine—读一行,ReadAll—读整个文件内容,SkipLine—跳过本行指向下一行,Write(var)—把字符串var写入文件,WriteLine(var)—把字符串var和换行符写入文件,WriteBlankLines(n)—写入n个换行符。

下面给出几个利用VBScript访问外部文件的例子:

1.创建一个新的文本文件,如果文件已经存在则报告错误:

代码如下:

Rem 在当前盘根目录下创建"测试.txt"并写入一个字符串

VBS dim fso,file,filename

VBS filename="\测试.txt"

VBS Const ForWriting=2

VBS Set fso=CreateObject("Scripting.FileSystemObject")

If fso.FileExists(filename)=-1

VBSCall Call MessageBox("发现错误!!!文件已经存在!!!")

Goto over

EndIf

VBS Set file=fso.CreateTextFile(filename,Ture)

VBS file.WriteLine("文件第一行,这是一个测试文件")

VBS file.Close

VBSCall Call MessageBox("测试文件创建成功!!!")

Rem over

EndScript

2.强行写入文件覆盖原有内容:

代码如下:

Rem 在当前盘根目录下创建"测试.txt"并写入一个字符串

VBS dim fso,file,filename

VBS filename="\测试.txt"

VBS Const ForWriting=2

VBS Set fso=CreateObject("Scripting.FileSystemObject")

If fso.FileExists(filename)=-1

VBSCall Call MessageBox("发现错误!!!文件已经存在!!!")

Goto over

EndIf

VBS Set file=fso.CreateTextFile(filename,Ture)

VBS file.WriteLine("文件第一行,这是一个测试文件")

VBS file.Close

VBSCall Call MessageBox("测试文件创建成功!!!")

Rem over

EndScript

3.往文件尾部追加内容:

代码如下:

Rem 往当前盘根目录下的文件"测试.txt"末尾追加一个字符串

VBS dim fso,file,filename

VBS filename="\测试.txt"

VBS Const ForAppending=8

VBS Set fso=CreateObject("Scripting.FileSystemObject")

If fso.FileExists(filename)=0

VBSCall Call MessageBox("发现错误!!!文件不存在!!!")

Goto over

EndIf

VBS Set file=fso.OpenTextFile(filename,ForAppending)

VBS file.WriteLine("测试追加字符串到文件末尾")

VBS file.Close

VBSCall Call MessageBox("追加字符串到文件成功!!!")

Rem over

EndScript

4.读取指定文件一行

代码如下:

Rem 从当前盘根目录下的文件"测试.txt"读一行

VBS dim fso,file,filename,text

VBS filename="\测试.txt"

VBS Const ForReading=1

VBS Set fso=CreateObject("Scripting.FileSystemObject")

If fso.FileExists(filename)=0

VBSCall Call MessageBox("发现错误!!!文件不存在!!!")

Goto over

EndIf

VBS Set file=fso.OpenTextFile(filename,ForReading)

VBS text=file.ReadLine

VBS file.Close

VBS text="从文件"&filename&"读取行成功!读到的字符串为:"&text

VBSCall Call MessageBox(text)

Rem over

EndScript

5.从指定文件行读取2个字符

代码如下:

Rem 从当前盘根目录下的文件"测试.txt"读取2个字符

VBS dim fso,file,filename,text

VBS filename="\测试.txt"

VBS Const ForReading=1

VBS Set fso=CreateObject("Scripting.FileSystemObject")

If fso.FileExists(filename)=0

VBSCall Call MessageBox("发现错误!!!文件不存在!!!")

Goto over

EndIf

VBS Set file=fso.OpenTextFile(filename,ForReading)

VBS text=file.Read(2)

VBS file.Close

VBS text="从文件"&filename&"读取2个字符成功!读到的字符为:"&text

VBSCall Call MessageBox(text)

Rem over

EndScript

6. ReadAll读取整个文件内容,大文件太占资源,不建议使用

//使用方法和ReadLine近似

7.SkipLine跳过当前行

//使用方法是file.SkipLine,仅用于只读属性打开的文件

8.测试文件行结束/文件结束

a.测试行结束

判断语句

If file.AtEndOfLine=-1

...

EndIf

//表达式为真的时候当前指针处于行末

b.测试文件结束

判断语句

If file.AtEndOfStream=-1

...

EndIf

//表达式为真的时候当前指针处于文件末

9.其他用于文件的函数或者叫方法功能有

a.file.Column 返回当前列号

b.file.Line 返回当前行号

c.file.FileExists(filename) 判断指定文件是否存在

最后强调一点,打开文件以后一定要记得关闭,以免发生数据错误,丢失数据。

2025公考·省考培训课程试听预约报名

  • 报班类型
  • 姓名
  • 手机号
  • 验证码
推荐信息