2012-09-18 80 views
0

當我使用Apache公共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 
+1

之後只需從陣列中移除它們?它們是來自'LIST'命令的標準結果的一部分。 –

+0

將它們過濾掉 –

回答

1

你只好將它們過濾出來(他們所代表的當前目錄,分別和FTP會自動報告給你)。

也許使用Apache Commons Collections filter機制?

1

您可以使用FTPFileFilter和API
listFiles(String pathname, FTPFileFilter filter)
在你FTPFileFilter類檢查,如果FTPFile.isDirectory(),並檢查該名稱。