小弟有段程序:
const TristateFalse = 0,ForReading = 1
dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
dim ts
Set ts=fs.GetFile("c:\wenjian.txt")
dim readf
set readf=ts.OpenAsTextStream(ForReading,TristateFalse)
当把"c:\wenjian.txt"改成"C:\Documents and Settings\Administrator\桌面\wenjian.txt"的时候就不行了。
还有在"C:\Documents and Settings\Administrator\桌面"文件夹下读取文本文件的时候,有些.txt可以读有些.txt不能读。
有没有哪位大虾给小弟解释一下。
---------------------------------------------------------------
应该和汉字有关,试试第一行加这句:
1@ CODEPAGE = "936"
---------------------------------------------------------------
1
2Set mFileObject=Server.CreateObject("Scripting.FileSystemObject")
3set mFile=mFileObject.OpenTextFile("D:\wolf\wolf\gp\gp\实例39\story.txt")
4while not mFile.AtEndOfStream
5Response.Write " " & mFile.ReadLine
6wend
7mFile.close
文件名长的应该没有问题的!
---------------------------------------------------------------
Administrator\桌面,应该是只有Administrator才能作修改,试一试在C:\下建文件吧。
---------------------------------------------------------------
UP
---------------------------------------------------------------
还是把路径中的汉字改成英文比较好。
---------------------------------------------------------------
把路径中的空格使用20%来替代。
---------------------------------------------------------------
C:\Documents and Settings\Administrator\桌面"
你这个文件夹的权限是Administrator
而你的IIS的默认用户不是Administrator而是IUSR_MachineName
---------------------------------------------------------------
Set ts=fs.GetFile(urlencode("C:\Documents and Settings\Administrator\桌面\wenjian.txt"))
试试
---------------------------------------------------------------
应当是权限的问题,我这里测试没有问题
---------------------------------------------------------------
右键点击文件图标,选择属性,在对话框内选择“安全”选项卡,看看“组或用户名称”列表中有没有everyone或者IUSR_的权限(这里的是你的机器名),如果没有,添加一个everyone或者IUSR_***权限进来,并设置其为“完全控制”。