asp-classic - 无法在经典asp中写入文件

标签 asp-classic filesystemobject

好吧,我已经有一段时间没有使用经典的 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

最佳答案

代码不会产生错误消息的唯一可能原因是您的页面中有这个:

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)

关于asp-classic - 无法在经典asp中写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/898188/

相关文章:

iis - 经典ASP-捕获500个错误

javascript - Scripting.Filesystemobject filemove,writefile 在 IE 浏览器中无法通过 javascript 工作(解决方法,文档?)

javascript - Firefox 或 Chrome 中的 ActiveXObject(不是 IE!)

vba - FileSystemObject 代码已经开始抛出错误

loops - 在文件夹中搜索包含服务器名称和扩展名的文件,然后选择最后修改的文件,并在文件名中获取日期

vbscript - 如何确定文件是否已使用VBS锁定?

security - 系统文件夹经典 ASP 漏洞?

html - Doctype 破坏了我的一些 css 但不是全部

css - 以模态形式验证

asp.net - 经典 ASP 和 ASP.NET MVC2 集成