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