查看服务器的完整文件系统并获取文件夹的路径

时间:2016-05-24 15:01:02

标签: jquery node.js

我想创建一个文件夹选择器,在服务器端选择一个甚至更好的多个文件夹并获取它们的路径。为此我需要某种FolderPicker或FolderTreeView。

我尝试了jQuery文件树(www.abeautifulsite.net/jquery-file-tree/),但我只获得了项目根目录的文件夹结构。用fs甚至可以访问项目文件夹之外的东西吗?

我很感激所有的小信息。

1 个答案:

答案 0 :(得分:0)

希望它可以帮到你。

可能重复:https://stackoverflow.com/a/21459809/5228251

以下功能取自^上面的链接。

var _getAllFilesFromFolder = function(dir) {

    var filesystem = require("fs");
    var results = [];

    filesystem.readdirSync(dir).forEach(function(file) {

        file = dir+'/'+file;
        var stat = filesystem.statSync(file);

        if (stat && stat.isDirectory()) {
            results = results.concat(_getAllFilesFromFolder(file))
        } else results.push(file);

    });

    return results;
};

用法:_getAllFilesFromFolder(__dirname + '/' + 'foldername');

^上面的函数将结果作为一个数组返回,该数组包含该' foldername'中的每个文件的路径。目录.. 并根据你在渲染之前在客户端使用的js / jquery库(configs)进行解析。

然后您可以使用任何js库在客户端的树结构中显示。几个月前我在我的项目中使用了jstree。您可以使用任何其他内容,例如 jquery-fileTree 等。

使用jade / html(无论你想要什么)和express来渲染结果数据。

以下是我将代码转换为树(目录)结构格式的代码:

https://gist.github.com/narainsagar/79d742ab9c62e29a81d1b1bba804782f

感谢。