使用javascript,客户端打开文件

时间:2011-02-25 09:24:59

标签: javascript asp.net

在我的应用程序中,我想打开客户端计算机上存在的文件。我创建了两个应用程序:桌面和Web应用程序。当用户安装桌面应用程序时,有一些文件被复制到其安装路径,我想通过javascript从我的Web应用程序打开这些文件。

5 个答案:

答案 0 :(得分:4)

出于安全原因,浏览器与主机绝缘(沙箱)。

浏览器访问本地文件的唯一方法(除沙箱内的文件,即cookie和缓存)是用户明确使用的HTML文件控件。

答案 1 :(得分:0)

不幸的是,JavaScript无法访问客户端的文件结构。您可以使用Adobe AIR之类的东西作为您的Web应用程序吗?

http://www.adobe.com/devnet/air/flex/articles/exploring_file_capabilities.html

答案 2 :(得分:0)

浏览器针对该场景进行沙盒处理。如果您可以使用JavaScript打开自己的文件,那么谁阻止我使用JavaScript打开您的文件。

解决此问题的常用方法是使用ActiveX组件并通过JavaScript与其进行交互。这会限制你使用IE浏览器。

答案 3 :(得分:0)

正如Oded上面提到的那样,出于安全考虑,这是不可能的 如果您已在客户端计算机上安装了应用程序,那么您可以将参数传递给它并执行应用程序,在这种情况下,您可以将文件的URI传递给应用程序,以便它在他们的计算机上打开但我看不到它发生在浏览器中。

答案 4 :(得分:-1)

这是怎么回事?

<script>
var oRequest;

if(document.all) {
   // Internet Explorer
   oRequest = new ActiveXObject("Microsoft.XMLHTTP")
}
else {
   // Mozilla
   oRequest = new XMLHttpRequest();
}


oRequest.open("GET", "file:///C:/myLocalFile.txt", false);
oRequest.send(null);
textToBeWritten = oRequest.responseText;

document.write(textToBeWritten);
</script>