FTPClient f = new FTPClient();
OutputStream out = null;
f.connect(url,port);
f.login(username, password);
f.enterLocalPassiveMode(); //被动
f.setControlEncoding("GBK");
f.setFileType(FTPClient.BINARY_FILE_TYPE);
f.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//f.setBufferSize(524288);
//f.setSoTimeout(300000); // 时间
//f.setDataTimeout(300000); // 时间
f.changeWorkingDirectory(f.printWorkingDirectory()+ remotePath);
FTPListParseEngine engine = f.initiateListParsing(remotePath);
FTPFile[] files = null;
while (engine.hasNext()) {
files = engine.getNext(25); // "page size" you want
for(FTPFile ff:files){
if(ff.getName().equals(fileName)){
File outfile = new File(localPath+"/"+newfilename);
out = new BufferedOutputStream(new FileOutputStream(outfile));
logger.info(remotePath+"/"+ff.getName());
logger.info(remotePath+"/"+new String(ff.getName().getBytes("GBK"),"ISO-8859-1"));
boolean is = f.retrieveFile(remotePath+"/"+new String(ff.getName().getBytes("GBK"),"ISO-8859-1"), out);
out.flush();
out.close();
}
}
i++;
}
f.logout();
下载一个 1kb的文件可以正常下载,说明权限是没问题的,9kb的文件就下载不了了,环境是linux+tomcat, 求教
另: windows环境下是正常的
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。