File Access组件由FileSystemObject对象和TextStream对象组成,使用FileSystemObject对象,可以建立、检索、删除目录及文件,而TextStream对象则提供读写文件的功能。 实例wuf23.asp。强调:只有通过实践才能加深理解,实践和比较程序运行结果是快速掌握编程技巧的最好方法。 <%@ Language=VBScript %> <% Option Explicit ' 注意绝对路径: C:\Inetpub\home\asp\wuf23.asp 主页路径: C:\Inetpub\home Dim Path, File, FSO, CTF, Str, StrHTML, StrNoHTML
'使用 CreateObject 方法创建 FileSystemObject 对象 FSO Set FSO = Server.CreateObject("Scripting.FileSystemObject")
Path = Server.MapPath("test") '返回test的物理目录(绝对路径) '就本例而言, 下面这句与上面这句返回的Path完全一样 'Path = Server.MapPath("\asp\test\") Response.Write Path & "<Br>"
If FSO.FolderExists(Path) = false then '判断该文件夹是否存在 FSO.CreateFolder(Path) '新建文件夹 End If
File = Path & "\asptest.txt" ' 写文件操作 If FSO.FileExists(File) = True Then '判断该文件是否存在 '建立 TextStream 对象 CTF Set CTF = FSO.OpenTextFile(File, 8, False, 0) '打开文件, 详见说明 Else Set CTF = FSO.CreateTextFile(File,False, False) '新建文件 End If CTF.Write "<P>第一个字符串; " '写字符串 CTF.WriteLine "第二个字符串; " '写字符串, 并加上一个换行符 CTF.Write "第三个字符串; " CTF.Close '注意要关闭文件
' 读文件操作 Set CTF = FSO.OpenTextFile(File, 1,,0) Do While CTF.AtEndOfStream <> True '判别是否文件结尾(循环语句) Str = CTF.ReadLine '(每次)读取一行 StrNoHTML = StrNoHTML & Str & "<BR>" & VbCrLf StrHTML = StrHTML & Server.HTMLEncode(Str) & "<BR>" & VbCrLf Loop Response.Write StrNoHTML Response.Write StrHTML
CTF.Close Set CTF = Nothing '释放对象 Set FSO = Nothing %> CTF = FSO.OpenTextFile(File, 8, False, 0),括号内第一个参数为文件名;第二个参数为8,表示在原文件后追加内容,若为1表示只读,为2则会重写原文件;第三个参数false表示,若指定文件不存在,也不新建文件,若为True,表示指定文件不存在,则新建该文件;第四个参数0表示以ASCII文件格式打开,若为-2,则表示以原来的格式打开。 CTF = FSO.CreateTextFile(File,False, False),第二个参数false表示不覆盖已有文件,若为True,则表示覆盖(OverWrite)已有文件;第三个参数为False表示文件格式为ASCII,为True表示文件格式为Unicode。 Server对象的MapPath方法将指定的虚拟路径转换为真实的文件路径。MapPath将“/”和“\”字符视为相同。 Server对象的HTMLEncode方法允许你对特定的字符串进行HTML编码,或者说使浏览器中可以正确显示特定的字符。上例中,若未编码,则“<P>”显示不出来,而是被浏览器作为HTML标记,你可以对比一下运行结果。 |