在linux环境下 FTPClient.retrieveFile() 方法下载不了大的文件,小的文件可以下载,windows环境下是正常的,求教
在lunix上要用InputStream input = ftp.retrieveFileStream(new String(fileName.getBytes("GBK"),"ISO-8859-1"));
重要的是retrieveFileStream这个方法,而且前边要加ftp.enterLocalPassiveMode();
在windows系统上边发的服务要用 ftpClient.retrieveFile(new String(ff.getName().getBytes("GBK"),"ISO-8859-1"), out);
重要的是retrieveFile这个方法,前边不需要加ftp.enterLocalPassiveMode();
具体原因还是不太清除,可能是流的传输方式不同导致。
下载大一点的文件会在 retrieveFile() 处卡死,
试试在下载之前调用FTPClient.enterLocalPassiveMode()方法。先进入被动模式再传输。
你问题解决了么?我也遇到这样的问题,敬请回复,谢谢
这回答都不对