/**
*
*@paramip
*@paramftpFileNameftp文件地址
*@paramsavePath要存储的地址,fileName要下载的文件名
*@return
*/
public staticStringdownFile(String ip,String ftpFileName,String savePath,String fileName) {
logger.info("ftpFileName "+ ftpFileName);
FTPClient ftp =newFTPClient();
try{
intreply;
ftp.connect(ip,8010);
//如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器
ftp.login("anonymous", null);//登录(匿名用户登录)
reply = ftp.getReplyCode();
if(!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
return null;
}
ftp.changeWorkingDirectory(ftpFileName);//转移到FTP服务器目录
FTPFile[] fs = ftp.listFiles();
for(FTPFile ff:fs){
if(ff.getName().equals(fileName)){
File localFile =newFile(savePath + ff.getName());
OutputStream is =newFileOutputStream(localFile);
ftp.setFileType(ftp.BINARY_FILE_TYPE);
ftp.retrieveFile(ff.getName(),is);
is.close();
}
}
ftp.logout();
success =true;
}catch(IOException e) {
e.printStackTrace();
}finally{
if(ftp.isConnected()) {
try{
ftp.disconnect();
}catch(IOException ioe) {
}
}
}
returnfileName;
}
网友评论