FSO一些代码

  使用FSO修改文件特定内容的函数

  function FSOchange(filename,Target,String)

  Dim objFSO,objCountFile,FiletempData

  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True)

  FiletempData = objCountFile.ReadAll

  objCountFile.Close

  FiletempData=Replace(FiletempData,Target,String)

  Set objCountFile=objFSO.CreateTextFile(Server.MapPath(filename),True)

  objCountFile.Write FiletempData

  objCountFile.Close

  Set objCountFile=Nothing

  Set objFSO = Nothing

  End Function

  使用FSO读取文件内容的函数

  function FSOFileRead(filename)

  Dim objFSO,objCountFile,FiletempData

  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True)

  FSOFileRead = objCountFile.ReadAll

  objCountFile.Close

  Set objCountFile=Nothing

  Set objFSO = Nothing

  End Function

  使用FSO读取文件某一行的函数

  function FSOlinedit(filename,lineNum)

  if linenum < 1 then exit function

  dim fso,f,temparray,tempcnt

  set fso = server.CreateObject("scripting.filesystemobject")

  if not fso.fileExists(server.mappath(filename)) then exit function

  set f = fso.opentextfile(server.mappath(filename),1)

  if not f.AtEndofStream then

  tempcnt = f.readall

  f.close

  set f = nothing

  temparray = split(tempcnt,chr(13)&chr(10))

  if lineNum>ubound(temparray)+1 then

  exit function

  else

  FSOlinedit = temparray(lineNum-1)

  end if

  end if

  end function

  使用FSO写文件某一行的函数

  function FSOlinewrite(filename,lineNum,Linecontent)

  if linenum < 1 then exit function

  dim fso,f,temparray,tempCnt

  set fso = server.CreateObject("scripting.filesystemobject")

  if not fso.fileExists(server.mappath(filename)) then exit function

  set f = fso.opentextfile(server.mappath(filename),1)

  if not f.AtEndofStream then

  tempcnt = f.readall

  f.close

  temparray = split(tempcnt,chr(13)&chr(10))

  if lineNum>ubound(temparray)+1 then

  exit function

  else

  temparray(lineNum-1) = lineContent

  end if

  tempcnt = join(temparray,chr(13)&chr(10))

  set f = fso.createtextfile(server.mappath(filename),true)

  f.write tempcnt

  end if

  f.close

  set f = nothing

  end function

  使用FSO添加文件新行的函数

  function FSOappline(filename,Linecontent)

  dim fso,f

  set fso = server.CreateObject("scripting.filesystemobject")

  if not fso.fileExists(server.mappath(filename)) then exit function

  set f = fso.opentextfile(server.mappath(filename),8,1)

  f.write chr(13)&chr(10)&Linecontent

  f.close

  set f = nothing

  end function

  读文件最后一行的函数

  function FSOlastline(filename)

  dim fso,f,temparray,tempcnt

  set fso = server.CreateObject("scripting.filesystemobject")

  if not fso.fileExists(server.mappath(filename)) then exit function

  set f = fso.opentextfile(server.mappath(filename),1)

  if not f.AtEndofStream then

  tempcnt = f.readall

  f.close

  set f = nothing

  temparray = split(tempcnt,chr(13)&chr(10))

  FSOlastline = temparray(ubound(temparray))

  end if

  end function

  FSO替换指定文件的字符

  程序代码:

  'FSO替换指定文件的字符

  Function FSOLineEdit(filename,Target,String)

  Dim objFSO,objCountFile,FiletempData

  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True)

  FiletempData = objCountFile.ReadAll

  objCountFile.Close

  FiletempData = Replace(FiletempData,Target,String)

  Set objCountFile = objFSO.CreateTextFile(Server.MapPath(filename),True)

  objCountFile.Write FiletempData

  objCountFile.Close

  Set objCountFile = Nothing

  Set objFSO = Nothing

  End Function

  'Response.Write FSOLineEdit("test.txt","世界","明天是一个好天去")

  删除文件

  程序代码:

  '删除文件

  Function DelFile(Filename)

  If Filename <> "" Then

  Set FSO = Server.CreateObject("Scripting.FileSystemObject")

  If FSO.FileExists(Filename) Then

  FSO.DeleteFile Filename

  End If

  Set FSO = Nothing

  End If

  End Function

  判断文件是否存在

  程序代码:

  '判断文件是否存在

  Function ReportFileStatus(filespec)

  Dim FSO,msg

  Set FSO = CreateObject("Scripting.FileSystemObject")

  If (FSO.FileExists(filespec)) Then

  msg = filespec & " exists."

  Else

  msg = filespec & " doesn't exist."

  End If

  ReportFileStatus = msg

  End Function

  使用FSO修改文件特定内容的函数

  程序代码:

  '使用FSO修改文件特定内容的函数

  Function FSOchange(filename,Target,String)

  Dim objFSO,objCountFile,FiletempData

  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  Set objCountFile = objFSO.OpenTextFile(Server.MapPath(filename),1,True)

  FiletempData = objCountFile.ReadAll

  objCountFile.Close

  FiletempData = Replace(FiletempData,Target,String)

  Set objCountFile = objFSO.CreateTextFile(Server.MapPath(filename),True)

  objCountFile.Write FiletempData

  objCountFile.Close

  Set objCountFile = Nothing

  Set objFSO = Nothing

  End Function

  使用FSO写文件某一行的函数

  程序代码:

  '使用FSO写文件某一行的函数

  Function FSOlinewrite(filename,lineNum,Linecontent)

  If linenum < 1 Then Exit Function

  Dim FSO,f,temparray,tempCnt

  Set FSO = Server.CreateObject("Scripting.FileSystemObject")

  If Not FSO.FileExists(Server.MapPath(filename)) Then Exit Function

  Set f = FSO.OpenTextFile(Server.MapPath(filename),1)

  If Not f.AtEndofStream Then

  tempcnt = f.ReadAll

  f.Close

  temparray = Split(tempcnt,Chr(13)&Chr(10))

  If lineNum>UBound(temparray)+1 Then

  Exit Function

  Else

  temparray(lineNum-1) = lineContent

  End If

  tempcnt = jo& #105;n(temparray,Chr(13)&Chr(10))

  Set f = FSO.cr& #101;atetextfile(Server.MapPath(filename),true)

  f.Write tempcnt

  End If

  f.Close

  Set f = Nothing

  End Function

  建立目录的程序,如果有多级目录,则一级一级的创建

  程序代码:

  '建立目录的程序,如果有多级目录,则一级一级的创建

  Function CreateDIR(ByVal LocalPath)

  On Error Resume Next

  LocalPath = Replace(LocalPath,"\","/")

  Set FileObject = Server.CreateObject("Scripting.FileSystemObject")

  patharr = Split(LocalPath,"/")

  path_level = UBound(patharr)

  For i = 0 to path_level

  If i=0 Then pathtmp=patharr(0) & "/" Else pathtmp = pathtmp & patharr(i) & "/"

  cpath = Left(pathtmp,Len(pathtmp)-1)

  If Not FileObject.FolderExists(cpath) Then FileObject.CreateFolder cpath

  Next

  Set FileObject = Nothing

  If Err.Number <> 0 Then

  CreateDIR = False

  Err.Clear

  Else

  CreateDIR = True

  End If

  End Function

  下面列举一下这些不常用但是却非常酷的功能:

  很少被了解的FSO功能

  GetSpecialFolder Method 返回特定的Windows文件夹的路径: Windows安装目录;Windows系统目录;Windows临时目录 FSO.GetSpecialFolder([0, 1, or 2]) 

  GetTempName Method 返回一个随机产生的文件或者目录名字,用于需要存储临时数据时

  GetAbsolutePathName Method 返回文件夹的绝对路径(类似于Server.MapPath)。

  比如,FSO.GetAbsolutePathName("region") 将返回类似于下面的结果:"c:mydocsmyfolder egion"

  GetExtensionName Method 返回路径中最后部分的扩展名

  (比如:FSO.GetExtensionName("c:docs est.txt") 将返回txt)

  GetBaseName and GetParentFolder Methods 返回路径中最后部分的父文件夹

  (比如:FSO.GetParentFolder ("c:docsmydocs") 将返回'docs')

  Drives Property 返回所有本地可用驱动器的集合,用于建立资源浏览器样的用户接口。

  使用上面的功能时,最好建立好出错处理的代码。因为如果需要的参数不存在,将会产生麻烦的信息。