0

当我使用 Apache commons API 检索 FTP 文件时,我得到“。” 和“..”所有目录中的目录,包括子目录。我怎样才能避免这两个目录?有人可以建议我吗?

我的代码是:

client.changeWorkingDirectory("/");
String[] names = client.listNames();
for (String name : names) {
System.out.println("File Name = " + name);
}
FTPFile[] ftpFiles = client.listFiles(); // Want to eliminate "." and ".." files 

output: 
File Name = .
File Name = ..
File Name = .ftpquota
File Name = file1
File Name = file2
4

2 回答 2

1

您只需将它们过滤掉(它们分别代表当前目录和目录,FTP 会自动向您报告)。

也许使用 Apache Commons Collections过滤机制?

于 2012-09-18T11:16:21.470 回答
1

您可以使用FTPFileFilterapi
listFiles(String pathname, FTPFileFilter filter)
在您的FTPFileFilter类中检查是否FTPFile.isDirectory()并检查名称。

于 2012-09-18T11:24:42.817 回答