欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP中FSO的神奇功能 - 用FSO进行内容管理

程序员文章站 2023-08-24 12:48:06
作 者 : 甘冀平    到此,你对fso可能已经有了很好的体会。让我们再深入研究一步,来解决更复杂的难题。    首先,你可能希望对文件改名。为了跟踪所有的文档,...
作 者 : 甘冀平


   到此,你对fso可能已经有了很好的体会。让我们再深入研究一步,来解决更复杂的难题。

   首先,你可能希望对文件改名。为了跟踪所有的文档,你将要重新命名它们以便唯一,这样就可以被系统容易地区
别。很不幸,fso不允许简单的文件改名操作,所以我们不得不修改一下。

< %
' create the fso object
set fso = server.createobject("scripting.filesystemobject")
path = "c: emp est.txt"
strdate = replace(date(), "/", "")
strdir = "c:inetpubwwwrootarticles" & strdate
strnewfilename = hour(now) & "_" & minute(now) & "_" &
second(now) & ".html"

' open the old file
set file = fso.opentextfile(path, 1) < -- for reading
strtext = file.readall
set file = nothing

' check for and/or create folder
if not fso.folderexists(server.mappath(strdir)) then
set f = fso.createfolder(server.mappath(strdir))
else
set f = fso.getfolder(server.mappath(strdir))
end if

' create and write new file
set file = fso.createtextfile(f.path & "" & strnewfilename)
file.write(strtext)
set f = nothing
file.close
set file = nothing

' delete the old file
fso.deletefile(path & "" & rst("filename") & i)
' clean up
set fso = nothing
%>

   fso能力的不足在这里却成了优势,我们可以一次执行2步。首先,打开文件并读入文件的内容。假设这里要创建一个
唯一的文件夹和一个唯一的文件来存储文章。然而,因为文件夹的路径每天都将改变,所以必须首先检查是否文件夹已经
存在,如果不存在,就创建它。这在if not fso.folderexists代码段完成。然后,取得那个路径,创建一个新的文件。新
文件建立完成后,删除掉旧文件,这通过fso.deletefile来完成。

   这2步就是:对文件改名,然后移动到一个更合适的目录下。注意,在这里还可以对文件进行更多地操作,比如在写
入新文件前进行一下内容的编辑。