有没有办法将OpenTextFile用于服务器目的?

时间:2013-04-09 14:56:35

标签: javascript html internet-explorer createfile filesystemobject

我正在使用以下代码,它在本地使用时效果很好,但是它可以用于服务器目的吗?

function WriteToFile(data) {
    var currentdate = new Date(); 
    var datetime = "Time: " + currentdate.getDate() + "/" + (currentdate.getMonth()+1)  + "/" + currentdate.getFullYear() + " @ " + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds();
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var a = fso.OpenTextFile("C:\\logs\\log.txt", 8);
    a.WriteLine(datetime);
    a.WriteLine(data + "\n");
    a.Close();
 }

我已经尝试了在Z:驱动器中txt文件路径的所有内容,但没有任何运气。这甚至可能吗?我还授予了对文件夹“Everyone”的访问权限,因此它可以读写,但我仍然无法打开txt文件进行编辑。我记录的是使用IE8。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您无法使用ActiveX Scripting.FileSystemObject 使用示例中的语法访问服务器上的任何文件。这是因为ActiveX FileSystemObject控件将在客户端执行,因为没有指定远程服务器,因此它只能访问客户端的文件系统。您可以使用语法指定远程服务器,但在IE 9标准模式或IE 10及更高版本中它是not supported,因此不是真的推荐。

相反,要访问服务器的文件系统,您需要使用服务器端语言(如Active Server Pages(ASP))在服务器端创建FileSystemObject。在ASP FileSystemObject中,它将使用Server.CreateObject("Scripting.FileSystemObject")

进行实例化

可以在此处找到使用FileSystemObject和ASP的一些好例子:http://support.microsoft.com/kb/218606和此处:http://www.codeproject.com/Articles/7296/Reading-Files-in-ASP-and-How-to-Search-for-a-parti