使用VBS访问外部文本文件一些方法和脚本实例代码

处理文件用到的常量有: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) 判断指定文件是否存在

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

(0)

相关推荐

  • VBScript 文件操作代码小结

    创建文本文件 复制代码 代码如下: Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.CreateTextFile("C:\FSO\ScriptLog.txt") 检察文件是否存在 复制代码 代码如下: Set objFSO = CreateObject("Scripting.FileSystemObject") If objFSO.FileE

  • 用vbs对文本文件的内容进行排序

    问: 您好,脚本专家!我有一个包含计算机名称列表的文本文件.如何按照字母顺序对该文件进行排序? -- LR 答: 您好,LR.如果想偷懒的话,我们就会告诉您:"对不起,您不能这样做."我们也可以就此脱身,因为 Microsoft 的脚本编写技术中没有一个方法能在打开文本文件后对文件进行排序.不过,嗨,"脚本专家"什么时候偷过懒呢? 噢,对了,我们是偷过几次懒,不过希望所有的人都已经忘了.不过,这次我们将向您提供一个解决办法. 虽然没有能直接对文本文件进行排序的方法,

  • 用vbscript实现从文本文件中删除所有重复行的代码

    问: 您好,脚本专家!如何从文本文件中删除所有重复行? -- SW 答: 您好,SW.您知道,成为一名脚本专家便意味着开始永无止境地寻找给定问题的最终解决方案.(或者至少在我们的经理问为什么我们似乎从未真正完成什么时,我们是这么告诉他的:"老板,永无止境的寻找过程需要时间!")这就是为什么我们很高兴看到您的问题的原因.不久前 我们回答了一个关于从文本文件中删除重复名字的类似问题.我们想到的解决方案十分简单而且效果不错:只是我们不确定那是最佳解决方案.现在,很感谢您的问题,我们可以再次尝

  • 用vbs实现对文本文件中的项计数

    问: 嗨,脚本专家!如何向文本文件的顶部添加行? -- FT 答: 您好,FT.您知道,在亚瑟·柯南·道尔爵士生涯的某一时刻,他实际上将夏洛克·福尔摩斯写死了,他认为他已写完了有关这个大侦探所有能写的一切.公众的疾呼很快改变了他的想法,他迅速地使夏洛克·福尔摩斯起死回生.(按照所有肥皂剧的那种基本情节主线一路创作下来.) 我们脚本专家对亚瑟·柯南·道尔爵士深感同情.毕竟,我们会周期性地想,"好了,到这里吧:我们已编写了有关文本文件所有能编写的一切."我们刚有此想法,就立刻收到有关文本文

  • VBS文本文件操作实现代码

    对于文件的操作,例如:生成一个或者打开一个或者删除一个.txt格式文件.虽然官方的FILE插件提供了一些基本功能,但功能不多.你并不需要理解什么是fso模版,什么是vbs语句,直接套用下面的语句吧!红色字为自己定义的部分,蓝色字为任意选一部分 如果你看不懂,请参考下面的例子!操作同一个文件红色部分必须相同 请认真看括号内的解释内容定义一个名为fso的关系文件问题的对象,对于一个文件的操作只需写一次,此句必须写VBS Set fso = CreateObject("Scripting.FileSy

  • 用vbs读取文本文件的最后一行

    问: 您好,脚本专家!如何仅读取文本文件的最后一行? -- BM 答: 您好,BM.如果您曾经想知道您好,脚本专家!与其它每日专栏(比如,知心姐姐)的不同之处,那么,下面是一种途径.假设有人在给知心姐姐的信中说: 知心姐姐: 我的生活一团糟,我需要采取一些措施来应对.我如何能扭转我的生活并且重新快乐起来? 绝望之人于代顿 知心姐姐绝不会给绝望之人这样的答复: 亲爱的绝望之人: 唉,您的生活不能变好了.很抱歉. 那么,您认为脚本专家会如何答复您关于读取文本文件的最后一行呢?答对了: 亲爱的 BM:

  • vbs删除文本文件的行的函数

    Delete Line Function 复制代码 代码如下: Function DeleteLine(strFile, strKey, LineNumber, CheckCase) 'DeleteLine Function by TomRiddle 2008 'Remove line(s) containing text (strKey) from text file (strFile) 'or 'Remove line number from text file (strFile) 'or

  • 用vbs实现读取文本文件的方法

    vbs读取文件方法Function readfile(readfilepath) 'On Error Resume Next     Set fs = CreateObject("Scripting.FileSystemObject")     Set file = fs.OpenTextFile(readfilepath, 1, false)     readfile=file.readall     file.close     set fs=nothing end Functio

  • 使用VBS访问外部文本文件一些方法和脚本实例代码

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

  • js判断某个方法是否存在实例代码

    本文实例讲述了js判断某个方法是否存在的代码.分享给大家供大家参考. 具体代码如下: 复制代码 代码如下: <html> <head> <title> js判断某个方法是否存在</title> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <script type="text/javascript&q

  • JavaScript闭包函数访问外部变量的方法

    闭包是指有权访问另一个函数作用域中的变量的函数,但作用域的配置机制有一个需要注意的地方,即闭包只能取得包含函数中任何变量的最后一个值. 如以下案例: function create(){     var arr = new Array();        for (var i=0; i<10; i++){         arr[i] = function(){             return i;         };      }       return arr; }   var c

  • Android 实现监听的四种方法详解实例代码

    直接上代码,大家可以参考下 (1)自身类作为事件监听器 package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivit

  • javascript 方法覆写实例代码

    New Document [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  • XStream使用方法总结附实例代码

    XStream中的核心类就是XStream类,一般来说,熟悉这个类基本就够用了,如果你用的更多,估计是你设计有问题,否则不需要. XStream对象相当Java对象和XML之间的转换器,转换过程是双向的.创建XSteam对象的方式很简单,只需要new XStream()即可. Java到xml,用toXML()方法. Xml到Java,用fromXML()方法. 在没有任何设置默认情况下,java到xml的映射,是java成员名对应xml的元素名,java类的全名对应xml根元素的名字.而实际中

  • JavaScript中子函数访问外部变量的3种解决方法

    前言 我们在写web页面时,肯定会经常遇到下面这种情况: <body> <div class="btns-wrapper"></div> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script> var wrapper = $('.btns-wrapper'); fo

  • PHP闭包函数传参及使用外部变量的方法

    本文实例讲述了PHP闭包函数传参及使用外部变量的方法.分享给大家供大家参考,具体如下: 在Laravel控制器写两个方法,一个是在内部创建一个闭包函数,一个是执行传过来的闭包函数,测试闭包的写法,use使用外部变量,及闭包函数的传参.如下: //测试闭包传参及use使用外部变量 public function testClosure($t1, $t2) { $closure = function ($param1, $param2) use ($t1, $t2) { echo $param1.$

  • Flash中加载外部文件的方法

    Flash可以通过帧.按扭.影片剪辑来调用外部文件.调用的外部文件包括:外部文本文件.外部程序文件.外部*.swf文件.外部图片文件.外部音乐文件.外部脚本文件 .现总结如下: [loadMovieNum()函数] [用法]:loadMovieNum("url",level [, variables])  [功能]: 函数:在播放原来加载的 SWF 文件的同时将 SWF 文件或 JPEG 文件加载到 Flash Player 中的某个级别.  [参数]:首先我们可以看到该函数有3个参数

随机推荐