我想知道是否有任何方法在客户端使用javascript给出文件名和路径来读取文件。我知道阅读方法:input type="file"
。
我的意思是没有打开文件浏览器并选择文件,只需用文件名读取,就像fopen一样。
如果不是其他方法,如何从文件名和路径中实例化javascript中的File对象?
看到答案我想到了更多关于我的目的的简要介绍。 我不是在制作一个网页。我使用浏览器就像任何系统上都可用的软件一样。 html页面都是本地的。我这样做是为了让我拥有js的力量优势。鉴于这种情况有没有办法设置允许它读取文件的权限标志? 谢谢。
答案 0 :(得分:4)
Drag 'n Drop API是使用JS
读取文件的另一种选择总是存在障碍,因此您的代码不会直接从客户端的文件系统中读取。这是出于隐私和安全目的而设计的。
扩展程序/插件 - 沙盒将成为您的敌人,限制文件系统访问
Java Applet - 需要签名证书才能读取文件系统。自签名证书将生成“您将信任此Applet”提示符,该提示符将充当安全提示。
输入类型=文件 - 为用户提供选择文件的选项
拖放 - 为用户提供了拖放文件的选项
XHR - 同源策略会阻止您,特别是如果您在本地而不是在服务器上执行页面。
JSONP - 但是,由于这会绕过SOP,因此您的文件应采用JSONP格式。
答案 1 :(得分:0)
我找到了解决问题的方法,这里是...... 确实,我们对javascript有限制,每当用户或页面请求文件时,它必须通过弹出的额外窗口, 但是如果您可能请求的所有文件都在已知文件夹中,那么您可以改为让用户指向压缩文件夹。 可以使用zip.js之类的工具打开压缩文件夹中需要的文件。 谢谢:))