好吧,它已经有一段时间,因为我已经与传统的ASP工作,所以我有点生疏。这里是我的问题。

我试图写一个文件使用FSO文件系统。下面的代码是非常简单的。但是,该文件没有出现,并没有错误出现。我知道它的运行的代码,因为我这个片段之前和之后添加response.writes,他们都出现在输出。但是,创建没有文件,不会引发错误。所以这是强制的错误虚假路径我甚至改变了它。没有骰子。我说大家已经阅读并在目录权限写。还是一样。

想法?

下面是我的代码:

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

'Open the text file
Dim objTextStream
Set objTextStream = objFSO.OpenTextFile("d:\test.txt", True)

'Display the contents of the text file
objTextStream.WriteLine "howdy"

'Close the file and clean up
objTextStream.Close
Set objTextStream = Nothing
Set objFSO = Nothing
有帮助吗?

解决方案

尝试这种情况:

<%

if Append = true then
   iMode = 8
else 
   iMode = 2
end if
set oFs = server.createobject("Scripting.FileSystemObject")
set oTextFile = oFs.OpenTextFile("C:\wwwroot\Test.txt", iMode, True)
oTextFile.Write "Test Content"
oTextFile.Close
set oTextFile = nothing
set oFS = nothing

%>

我试过这个地方,设置在我的目录的权限后,它的工作。

您可以从这里得到的原始来源: http://www.freevbcode.com/ShowCode.Asp?ID=89

其他提示

唯一可能的原因是该代码不会产生错误信息,是你有这样的在你的页面:

On Error Resume Next

这是不好的,对于你刚才看到的原因。它只是静静地忽略任何错误信息,并留下你没有线索,为什么预期它不工作。

(应该仅被用于在那里你预料的错误代码的分离的零件,实际上检查每个操作之后的错误条件。)

从您的页面删除,并且错误信息,你可能得到的是,该参数是该线路上的呼叫无效:

Set objTextStream = objFSO.OpenTextFile("d:\test.txt", True)

您已经忘记了第二个参数,它是I / O模式。您应该使用值1写法:

Set objTextStream = objFSO.OpenTextFile("d:\test.txt", 1, True)

可替换地,可以使用CreateTextFile方法来代替:

Set objTextStream = objFSO.CreateTextFile("d:\test.txt", True)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top