Apache-commons ftp extracts multiple files

I am trying to use apache-commons net FTP lib to get from an FTP server. The code works fine if there is only 1 file in the directory, but always returns null the second time I call retrieveFileStream (). Any thoughts? I wrote the following code example to demonstrate my problem.

public static void main(String[] args) throws Exception { String strLine; FTPClient client = null; try{ client = new FTPClient(); client.connect("localhost", 21); client.enterLocalPassiveMode(); client.login("ftptester", "letmein"); client.changeWorkingDirectory("remote"); FTPFile[] ftpFiles = client.listFiles(); if (ftpFiles != null && ftpFiles.length > 0) { for (FTPFile file : ftpFiles) { if (!file.isFile()) { continue; } InputStream fin = client.retrieveFileStream(filepath); if (fin == null) { System.out.println("could not retrieve file: " + filepath); continue; } byte[] data = readBytes(fin); // helper method not shown, just processes the input stream fin.close(); fin = null; System.out.println("data: " + new String(data)); } } } finally { ... // cleanup code } } 
+7
source share
1 answer

Doh! Missing Magic:

 completePendingCommand() 
+17
source

All Articles