commons-net的FTPClient,在使用public InputStream retrieveFileStream(String remote) 方法时需要特别注意,在调用这个接口后,一定要手动close掉返回的InputStream,然后再调用completePendingCommand方法,若不是按照这个顺序,则不对,伪代码:
InputStream is = ftpClient.retrieveFileStream(remote);
is.close();
InputStream is = ftpClient.retrieveFileStream(remote);
is.close();
ftpClient.completePendingCommand();
如果没写ftpClient.completePendingCommand();会导致后面对FTPClient的操作都失败