node-webkit 从目录中读取文件的完整路径
node-webkit read full path of files from directory
我在 NW.js 中尝试了以下代码以读取给定文件夹下具有完整路径的所有文件,但无法正常工作。怎么了?谢谢
function chooseFiles() {
var files = $('#fileDialog')[0].files;
for (var i = 0; i < files.length; ++i) {
console.log(files[i].path);
}
}
chooseFiles('#fileDialog');
<input type="file" id="fileDialog" nwdirectory />
我不确定您使用的代码是否与您粘贴在此处的代码完全相同,但它似乎没有做任何事情当用户实际选择某些内容时。如果您要使用输入 然后 调用 chooseFiles()
选择一些东西,它应该可以工作。至少在我快速设置的 nw.js 应用程序中是这样。
如果您希望文件在用户完成选择时显示在 console.log()
中,我认为您应该可以使用以下代码来实现:
<html>
<head>
<script src="jquery.js"></script>
<script>
$(function () {
$("#fileDialog").on("change", function () {
var files = $(this)[0].files;
for (var i = 0; i < files.length; ++i) {
console.log(files[i].path);
}
});
});
</script>
</head>
<body>
<input type="file" id="fileDialog" nwdirectory />
</body>
</html>
如果您希望在用户使用文件对话框选择目录时立即记录文件,我认为 on("change")
可能正是您要查找的内容。它使用 nw.js v0.12 对我有用,所以试一试,看看这是否是您要找的。
我误解了 nwdirectory 的工作原理。 NW 文档指出 "nwdirectory is a bit similar to webkitdirectory because it let user select a directory too, but it will not enumerate all files under the directory but directly returns the path of directory"
到 return 文件列表我只需要像这样在 input
中使用 multiple
。
<input type="file" id="fileDialog" multiple />
我还从 How to find out if reading dir is completed 中找到了一个工作代码,用于读取和 return 目录和文件,并递归地提取路径。再次感谢两位。
我在 NW.js 中尝试了以下代码以读取给定文件夹下具有完整路径的所有文件,但无法正常工作。怎么了?谢谢
function chooseFiles() {
var files = $('#fileDialog')[0].files;
for (var i = 0; i < files.length; ++i) {
console.log(files[i].path);
}
}
chooseFiles('#fileDialog');
<input type="file" id="fileDialog" nwdirectory />
我不确定您使用的代码是否与您粘贴在此处的代码完全相同,但它似乎没有做任何事情当用户实际选择某些内容时。如果您要使用输入 然后 调用 chooseFiles()
选择一些东西,它应该可以工作。至少在我快速设置的 nw.js 应用程序中是这样。
如果您希望文件在用户完成选择时显示在 console.log()
中,我认为您应该可以使用以下代码来实现:
<html>
<head>
<script src="jquery.js"></script>
<script>
$(function () {
$("#fileDialog").on("change", function () {
var files = $(this)[0].files;
for (var i = 0; i < files.length; ++i) {
console.log(files[i].path);
}
});
});
</script>
</head>
<body>
<input type="file" id="fileDialog" nwdirectory />
</body>
</html>
如果您希望在用户使用文件对话框选择目录时立即记录文件,我认为 on("change")
可能正是您要查找的内容。它使用 nw.js v0.12 对我有用,所以试一试,看看这是否是您要找的。
我误解了 nwdirectory 的工作原理。 NW 文档指出 "nwdirectory is a bit similar to webkitdirectory because it let user select a directory too, but it will not enumerate all files under the directory but directly returns the path of directory"
到 return 文件列表我只需要像这样在 input
中使用 multiple
。
<input type="file" id="fileDialog" multiple />
我还从 How to find out if reading dir is completed 中找到了一个工作代码,用于读取和 return 目录和文件,并递归地提取路径。再次感谢两位。