脚本编程3 关于文件的读写

时间:2021-05-23


使用vbscript来读写文件,十分的方便,废话少说,切入正题。



1、打开文件

使用opentextfile方法

setfs=createobject(“scripting.filesystemobject”)

setts=fs.opentextfile(“c:\1.txt”,1,true)

注意这里需要填入文件的完整路径,后面一个参数为访问模式

1为forreading

2为forwriting

8为appending

第三个参数指定如果指定文件不存在,是否创建。



2、读取文件

读取文件的方法有三个

read(x)读取x个字符

readline读取一行

readall全部读取

例如:

setfs=createobject(“scripting.filesystemobject”)

setts=fs.opentextfile(“c:\1.txt”,1,true)

value=ts.read(20)

line=ts.readline

contents=ts.readall



这里还要介绍几个指针变量:

textstream对象的atendofstream属性。当处于文件结尾的时候这个属性返回true.我们可以用循环检测又没有到达文件末尾。例如:

setfs=createobject(“scripting.filesystemobject”)

setf=fs.getfile(“c:\1.txt”,1,false)

setts=f.openastextstream(1,0)

dowhilets.atendofstream<>true

f.read(1)

loop



还有一个属性,atendofline,如果已经到了行末尾,这个属性返回true.

Textstream对象还有两个有用的属性,column和line.

在打开一个文件后,行和列指针都被设置为1。

看一个综合的例子吧:

*******************************read.vbs******************************

setfs=createobject(“scripting.filesystemobject”)

setf=fs.opentextfile(“c:\1.txt”,1,true)

dowhilef.atendofstream<>true

data=””

fora=1to5

iff.atendofstream<>truethen

data=data+f.readline

endif

next

dataset=dataset+1

wscript.echo“dataset” &dataset&”:”&data

loop



最后说一下在文件中跳行

skip(x)跳过x个字符

skipline跳过一行

用法也很简单和前面一样,就不说了。





3、写文件

可以用forwriting和forappending方式来写

写有3各方法:

write(x)

writeline

writeblanklines(n)写入n个空行



来看一个例子:

*****************************************************************

data=”hello,Ilikescriptprograming”

setfs=createobject(“scripting.filesystemobject”)

if(fs.fileexists(“c:\2.txt”))then

setf=fs.opentextfile(“c:\2.txt”,8)

f.writedata

f.writelinedata

f.close

else

setf=fs.opentextfile(“c:\2.txt”,2,true)

f.writeblanklines2

f.writedata

f.close

endif

注意写完文件以后一定要关闭!!!!!!!还有就是,如果要读文件又要写文件,读完之后一定也要记得关闭,这样才能以写的方式打开。



好了关于文件都说完了,实际运用中还有可能牵扯到关于字符串的操作。

后面的1章里面,我打算写一点驱动器和注册表的内容,脚本编程内容也很丰富,我也只讲关于黑客方面的。今天好累啊,还有就是请大家不要在论坛灌水了,我每天都删贴,这样也不好,论坛是大家的,我每天写一些原创的东西也就是为了让我们的论坛和别的论坛有些不同,我一个人力量有限,还要靠大家的力量,我打算在论坛上找几个人一论坛的名义一起编个软件,这样我们的论坛也算有点名声。

很晚了,休息了

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章