如何使用 FSO 对象中的 CopyFile 与 MoveFile 方法! 本人使用了如下代码段: <% dim fso,f Set fso=Server.CreateObject("Scripting.FileSystemObject") Set f=fso.OpenTextFile("C:/hehout.txt",2,true) f.Write "This is a file of hehout." fso.CopyFile "C:/hehout.txt", "d:/" fso.MoveFile "C:/hehout.txt", "i:/" %> --------------------- 出现了如下错误信息(IIS 5.0 Win Xp): 技术信息(用于支持人员) 错误类型: Microsoft VBScript 运行时错误 (0x800A0046) 没有权限 /mywebs/try2.asp, 第 15 行 浏览器类型: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) 网页: GET /mywebs/try2.asp 时间: 2004年8月19日, 11:49:53 ----------------------------------------------------------------------------------- 为什么?:( |
|
||
怎么没有人回答? |
|
||
加个f.close就OK了。。。 |
|
||
提示没有权限? |
|
||
因为文件打开的时候只能复制不能移动,所以会报没有权限,只要你把创建的文件关闭,就支持移动权限了。。。:}) |
|
||
哦,真是一语惊醒梦中人啊! 我怎么没想到呢? |
|
||
Function CopyFile_Folder(path,pathTo) dim rootPath rootPath=Request.ServerVariables("APPL_PHYSICAL_PATH") Set fso=Server.CreateObject("Scripting.FileSystemObject") 'Response.write "ss="+rootPath + path & "," & rootPath+pathTo & "<br>" If(fso.FolderExists(rootPath+path) and fso.FolderExists(rootPath+pathTo)) Then '目标文件夹与目标位置存在 fso.CopyFolder rootPath+path,rootPath+pathTo ElseIf(fso.FileExists(rootPath+path) and fso.FolderExists(rootPath+pathTo)) Then'目标文件与目标位置存在 Set f=fso.GetFile(rootPath+path) f.Copy (rootPath+path) End If End Function '------------------------------------- 不过以上这个function也不行啊?有错吗? |
|
||
以上你想达到一个什么目的,会报什么样的错?8D或者你把代码贴全。。。 |
|
||
已经全了。 rootPath=Request.ServerVariables("APPL_PHYSICAL_PATH") 是得到根地址所在的绝对地址,而path,与pathTo,分别是被复制文件或文件夹,复制目标地址的相对地址,那么rootPath+path,rootPath+pathTo,就是计算机的绝对地址了。 我试过用Server.MapPath()函数,但是这个输入的是相对地址是“”是会提示出错,而输入“/”或"../“时会显示根目录的上一级,就是说,我无法显示当前目录下文件或文件夹。 |
|
||
你的意思就是想得到文件和文件夹是吧!如果是的话,可这样写: <% dim rootpath,path,pathto rootpath=Request.ServerVariables("PATH_TRANSLATED") a=split(rootpath,"") path=a(ubound(a)) pathto=a(ubound(a)-1) Response.Write rootpath Response.Write "<br>" Response.Write path Response.Write "<br>" Response.Write pathto %> 参考下,不知道是不是你说的意思! |
|
||
上面代码只能得到文件和文件夹的名字,如果想显示文件夹下的名字可以自己修改通过FSO权限,得到你想要的,其它的就不用我说了吧,你应该清楚了吧!:O) |