正文

VBScript中的文件操作2009-11-10 11:12:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/enc999/50053.html

分享到:

3。对文件的操作 对文件的操作主要包括: 创建文件 写入文件 读取文件 移动、复制和删除文件    1)创建文件    创建文件主要有三种方法: CreateTextFile 方法,如:  Dim fso, f1 Set fso = CreateObject("Scripting.FileSystemObject") Set f1 = fso.CreateTextFile("c:\testfile.txt", True)      CreateTextFile方法的具体用法是这样的:         object.CreateTextFile(filename[, overwrite[, unicode]])       其中object参数为FSO对象名称;filename参数设置文件的路径;overwrite为布尔值,true代表可以覆盖,false代表不可覆盖;最后一个可选参数指明是否以Unicode储存文件,true代表使用unicode,false代表使用ASCII方式,省略时默认为ASCII方式。 OpenTextFile 方法 Dim fso, ts Const ForWriting = 2 Set fso = CreateObject("Scripting. FileSystemObject") Set ts = fso.OpenTextFile("c:\test.txt", ForWriting, True)      OpenTextFile方法的具体使用方法:              object.OpenTextFile(filename[, iomode[, create[, format]]])       其中object代表FSO对象的名称;       filename指明要创建的文件路径;       iomode为可选参数,可用数字和详细模式指定,代表输入\输出模式 常数 值 描述 ForReading 1 以只读模式打开文件。不能对此文件进行写操作。 ForWriting 2 以只写方式打开文件。不能对此文件进行读操作。 ForAppending 8 打开文件并在文件末尾进行写操作。       create为可选,以布尔值表示文件不存在时是否创建文件,true为允许创建,false为不允许,默认值为false;       format为可选,可用数字和详细模式指定,代表以何种格式打开文件: 常数 值 描述 TristateUseDefault -2 以系统默认格式打开文件。 TristateTrue -1 以 Unicode 格式打开文件。 TristateFalse  0 以 ASCII 格式打开文件。 OpenAsTextStream 方法 Dim fso, f1, ts Const ForWriting = 2 Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateTextFile ("c:\test1.txt") Set f1 = fso.GetFile("c:\test1.txt") Set ts = f1.OpenAsTextStream(ForWriting, True)    具体使用方法为:         object.OpenAsTextStream([iomode, [format]])    object代表FSO对象名称;    iomode和format参数设置和OpenTextFile方法相同;      2)写入文件 创建文件后就可以写入文件了,一般分为以下三步: 打开文本文件。 写入数据。 关闭文件。 创建文件时实际上会返回一个句柄,此时可以直接使用,写入文件可以有三种方法: 任务 方法 向打开的文本文件写数据,不用后续一个新行字符。 Write 向打开的文本文件写数据,后续一个新行字符。 WriteLine 向打开的文本文件写一个或多个空白行。 WriteBlankLines 下面示范这几种方法的具体使用: function CreateFile() {    var fso, tf;    fso = new ActiveXObject("Scripting.FileSystemObject");    tf = fso.CreateTextFile("c:\\testfile.txt", true);        // 写一行,并且带有新行字符。    tf.WriteLine("Testing 1, 2, 3.") ;    // 向文件写三个新行字符。     tf.WriteBlankLines(3) ;    // 写一行。    tf.Write ("This is a test.");    tf.Close(); }    3)读取文件 要从文本文件读取数据,则使用 TextStream 对象的 Read、ReadLine 或 ReadAll 方法。下表描述了不同的任务应使用哪种方法。 任务 方法 从文件读取指定数量的字符。 Read 读取一整行(一直到但不包括新行字符)。 ReadLine 读取文本文件的整个内容。 ReadAll 如果使用 Read 或 ReadLine 方法,并且想跳过数据的特殊部分,则使用 Skip 或 SkipLine 方法。read 方法的结果文本存在一个字符串中,该字符串可以显示在一个控件中,也可以用字符串函数(如 Left、Right 和 Mid)来分析,连接等等。 下面的 VBScript 示例示范了如何打开文件,和如何写数据到文件中并从文件读取数据: Sub ReadFiles    Dim fso, f1, ts, s    Const ForReading = 1    Set fso = CreateObject("Scripting.FileSystemObject")    Set f1 = fso.CreateTextFile("c:\testfile.txt", True)    ' 写一行。    Response.Write "Writing file <br>"    f1.WriteLine "Hello World"    f1.WriteBlankLines(1)    f1.Close    ' 读取文件的内容。    Response.Write "Reading file <br>"    Set ts = fso.OpenTextFile("c:\testfile.txt", ForReading)    s = ts.ReadLine    Response.Write "File contents = '" & s & "'"    ts.Close End Sub    4)移动、复制和删除文件  FSO 对象模式各有两种方法移动、复制和删除文件,如下表所述。 任务 方法 移动文件 File.Move 或 FileSystemObject.MoveFile 复制文件 File.Copy 或 FileSystemObject.CopyFile 删除文件 File.Delete 或 FileSystemObject.DeleteFile 下面的 VBScript 示例,在驱动器 C 的根目录中创建一个文本文件,向其中写一些信息,然后把它移动到 \tmp 目录中,并在 \temp 中做一个备份,最后把它们从两个目录中删掉。   Sub ManipFiles    Dim fso, f1, f2, s    Set fso = CreateObject("Scripting.FileSystemObject")    Set f1 = fso.CreateTextFile("c:\testfile.txt", True)    Response.Write "Writing file <br>"    '写一行。    f1.Write ("This is a test.")    '关闭文件。    f1.Close    Response.Write "Moving file to c:\tmp <br>"    '获取 C 的根目录(C:\)中的文件的句柄。    Set f2 = fso.GetFile("c:\testfile.txt")    '把文件移动到 \tmp 目录。    f2.Move ("c:\tmp\testfile.txt")    Response.Write "Copying file to c:\temp <br>"    '把文件复制到 \temp 目录。    f2.Copy ("c:\temp\testfile.txt")    Response.Write "Deleting files <br>"    '获得文件当前位置的句柄。    Set f2 = fso.GetFile("c:\tmp\testfile.txt")    Set f3 = fso.GetFile("c:\temp\testfile.txt")     文中源代码从Microsoft原版vbScript手册中选取,我的专业是电子技术,我很懒!   欢迎您到 ENC学习网 http://www.enc999.com 查看更多文章

阅读(5927) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册