我正在开发一个允许访问客户端文件系统的接口。用户应该能够浏览文件系统,选择一个目录,我的系统将显示所选目录的文件和子目录列表。
我曾尝试使用 HTML5 File API,但这显然只允许用户选择文件(而不是文件夹)。
任何指向这个方向的指针/帮助将不胜感激。
我正在开发一个允许访问客户端文件系统的接口。用户应该能够浏览文件系统,选择一个目录,我的系统将显示所选目录的文件和子目录列表。
我曾尝试使用 HTML5 File API,但这显然只允许用户选择文件(而不是文件夹)。
任何指向这个方向的指针/帮助将不胜感激。
这不能在 JavaScript 中完成,因为这将是一个潜在的安全问题。只有用户通过文件对话框选择的文件才能使用 JavaScript 访问。
如果您还没有遇到过,这里有一篇关于File API的非常好的文章。
如果它仍然是一个悬而未决的问题,那么让我给你一个可能对你有用的解决方案。
HTML
用于选择目录的文件输入:
<input type="file" id="file-input" webkitdirectory="" directory=""/>
JavaScript
以下脚本从给定文件夹和所有子文件夹中收集所有文件。甚至来自子子文件夹等。
$("#file-input").on("change", function(e) {
var thefiles = e.target.files;
$.each(thefiles, function(i, item) {
var thefile = item;
var reader = new FileReader();
reader.onload = function() {
files.push(thefile);
};
reader.readAsArrayBuffer(thefile);
});
});