asp(vbs)fso OpenTextFile方法参数说明
OpenTextFile是asp语言中的一个方法
打开指定的文件并返回一个TextStream对象,可以通过这个对象对文件进行读、写或追加。
object.OpenTextFile(filename[,iomode[,create[,format]]])
1、方法编辑打开指定的文件并返回一个TextStream对象,可以通过这个对象对文件进行读、写或追加。
object.OpenTextFile(filename[,iomode[,create[,format]]])
2、参数编辑object
必选项。object应为FileSystemObject的名称。
filename
必选项。指明要打开文件的字符串表达式。
iomode
可选项。可以是三个常数之一:ForReading、ForWriting或ForAppending。
create
可选项。Boolean值,指明当指定的filename不存在时是否创建新文件。如果创建新文件则值为True,如果不创建则为False。如果忽略,则不创建新文件。
format
可选项。使用三态值中的一个来指明打开文件的格式。如果忽略,那么文件将以ASCII格式打开。
3、设置编辑iomode参数可以是下列设置中的任一种:
常数值描述
ForReading1以只读方式打开文件。不能写这个文件。
ForWriting2以写方式打开文件
ForAppending8打开文件并从文件末尾开始写。
format参数可以是下列设置中的任一种:
值描述
TristateTrue以Unicode格式打开文件。
TristateFalse以ASCII格式打开文件。
TristateUseDefault使用系统默认值打开文件。
4、说明编辑下面的代码说明了如何使用OpenTextFile方法打开文件并追加文本:
varfs,a,ForAppending;
ForAppending=8;
fs=newActiveXObject("Scripting.FileSystemObject");
//可以是三个常数之一:ForReading、ForWriting或ForAppending
//分别是1,2,8
a=fs.OpenTextFile("c:\\testfile.txt",2,false);
...
a.Close();
在vbs脚本中的用例
打开指定的文件并返回一个TextStream对象,可以读取、写入此对象或将其追加到文件。
object.OpenTextFile(filename[,iomode[,create[,format]]])
参数
object
必选项。应为FileSystemObject对象的名称。
filename
必选项。字符串表达式,指明要打开的文件名称。
iomode
可选项。输入/输出模式,是下列三个常数之一:ForReading,ForWriting,或ForAppending。
create
可选项。Boolean值,指出当指定的filename不存在时是否能够创建新文件。允许创建新文件时为True,否则为False。默认值为False。
format
可选项。三个Tristate值之一,指出以何种格式打开文件。若忽略此参数,则文件以ASCII格式打开。
iomode参数可为下列设置之一:
常数
值
描述
ForReading
1
以只读模式打开文件。不能对此文件进行写操作。
ForWriting
2
以只写方式打开文件。不能对此文件进行读操作。
ForAppending
8
打开文件并在文件末尾进行写操作。
常数
值
描述
TristateUseDefault
-2
以系统默认格式打开文件。
TristateTrue
-1
以Unicode格式打开文件。
TristateFalse
0
以ASCII格式打开文件。
用法举例:
SubOpenTextFileTest ConstForReading=1,ForWriting=2,ForAppending=8 Dimfso,f Setfso=CreateObject("Scripting.FileSystemObject") Setf=fso.OpenTextFile("c:\testfile.txt",ForWriting,True) f.Write"嗨,你好!" f.Close EndSub CallOpenTextFileTest
毛票票写的一个函数
Dimfso Setfso=CreateObject("Scripting.FileSystemObject") setfn2=fso.GetFile("E:\webroot\jb51\index2.htm") flsize2=fn2.size fldate2=fn2.datelastmodified setfn=fso.GetFile("E:\webroot\jb51\index.htm") flsize1=fn.size fldate1=fn.datelastmodified Iffso.FileExists("E:\webroot\jb51\index2.htm")andflsize2>50000andfldate2>fldate1Then '判断文件的大小,如果html文件重新生成需要判断是否更新过且文件不能小于50K fso.getfile("E:\webroot\jb51\index2.htm").copy("E:\webroot\jb51\index.htm") iferr.number=0thenWriteHistory"成功"&now()&".........","log.txt" endif '日志写入函数 SubWriteHistory(hisChars,path) ConstForReading=1,ForAppending=8 Dimfso,f Setfso=CreateObject("Scripting.FileSystemObject") Setf=fso.OpenTextFile(path,ForAppending,True) f.WriteLinehisChars f.Close EndSub