热门列出XPCOM文件夹中的所有文件

时间:2019-06-19 12:06:26

标签: javascript firefox xpcom

我想使用XPCOM和iMacros列出文件夹中的所有图像。贝娄是我使用的代码,但出现错误。

ReferenceError: file is not defined, line 319 (Error code: -991)

这是我正在使用的代码示例。

   var imageurl =  "s:\\images\\";

imageurl = CheckFolder(imageurl);

alert(imageurl);

function CheckFolder(path) {

            alert(path)
            file.initWithPath(path);
            var children = file.directoryEntries;
            var child;
            var list = [];
            while (children.hasMoreElements()) {
                child = children.getNext().QueryInterface(Components.interfaces.nsILocalFile);
                list.push(child.leafName + (child.isDirectory() ? ' [DIR]' : ''));
            }
            alert(list.join('\n'));
        }

1 个答案:

答案 0 :(得分:0)

这是我根据上面的链接提出的解决方案。你是正确的目标。

//查找文件夹中的所有文件

function CheckFolder(filePath) {



    var nsFile = Components.Constructor("@mozilla.org/file/local;1", "nsIFile", "initWithPath");

    var file = new nsFile(filePath);

    //file.initWithPath(filePath);
    var children = file.directoryEntries;
    var child;
    var list = [];
    while (children.hasMoreElements()) {
        child = children.getNext().QueryInterface(Components.interfaces.nsILocalFile);
        list.push(child.leafName + (child.isDirectory() ? ' [DIR]' : ''));
    }
    alert(list.join('\n'));

    return list;
}