输入type =“file”的替代方法,用于在javascript中读取文件

时间:2013-02-09 15:42:55

标签: javascript filereader

我想知道是否有任何方法在客户端使用javascript给出文件名和路径来读取文件。我知道阅读方法:input type="file"

我的意思是没有打开文件浏览器并选择文件,只需用文件名读取,就像fopen一样。
如果不是其他方法,如何从文件名和路径中实例化javascript中的File对象?

看到答案我想到了更多关于我的目的的简要介绍。 我不是在制作一个网页。我使用浏览器就像任何系统上都可用的软件一样。 html页面都是本地的。我这样做是为了让我拥有js的力量优势。鉴于这种情况有没有办法设置允许它读取文件的权限标志? 谢谢。

2 个答案:

答案 0 :(得分:4)

Drag 'n Drop API是使用JS

读取文件的另一种选择

总是存在障碍,因此您的代码不会直接从客户端的文件系统中读取。这是出于隐私和安全目的而设计的。

  • 扩展程序/插件 - 沙盒将成为您的敌人,限制文件系统访问

  • Java Applet - 需要签名证书才能读取文件系统。自签名证书将生成“您将信任此Applet”提示符,该提示符将充当安全提示。

  • 输入类型=文件 - 为用户提供选择文件的选项

  • 拖放 - 为用户提供了拖放文件的选项

  • XHR - 同源策略会阻止您,特别是如果您在本地而不是在服务器上执行页面。

  • JSONP - 但是,由于这会绕过SOP,因此您的文件应采用JSONP格式。

答案 1 :(得分:0)

我找到了解决问题的方法,这里是...... 确实,我们对javascript有限制,每当用户或页面请求文件时,它必须通过弹出的额外窗口, 但是如果您可能请求的所有文件都在已知文件夹中,那么您可以改为让用户指向压缩文件夹。 可以使用zip.js之类的工具打开压缩文件夹中需要的文件。 谢谢:))