使用 XPCOM 列出文件夹中的所有文件
Hot to list all files from a folder with 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'));
}
这是我根据上面 link 所做的解决方案。你说对了。
//查找文件夹中的所有文件
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;
}
我想使用 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'));
}
这是我根据上面 link 所做的解决方案。你说对了。
//查找文件夹中的所有文件
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;
}