packagecom.founder.mrp.util;importcom.founder.mrp.util.storage.StorageFile;importorg.apache.commons.net.ftp.FTPClient;importorg.apache.commons.net.ftp.FTPReply;import java.io.*;importjava.net.HttpURLConnection;importjava.net.SocketException;importjava.net.URL;public classFtpUtil {/*** 获取FTPClient对象
*
*@paramftpHost FTP主机服务器
*@paramftpPassword FTP 登录密码
*@paramftpUserName FTP登录用户名
*@paramftpPort FTP端口 默认为21
*@return
*/
public staticFTPClient getFTPClient(String ftpHost, String ftpUserName,
String ftpPassword,intftpPort) {
FTPClient ftpClient= newFTPClient();try{
ftpClient= newFTPClient();
ftpClient.connect(ftpHost, ftpPort);//连接FTP服务器
ftpClient.login(ftpUserName, ftpPassword);//登录FTP服务器
if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
System.out.println("未连接到FTP,用户名或密码错误。");
ftpClient.disconnect();
}else{
System.out.println("FTP连接成功。");
}
}catch(SocketException e) {
e.printStackTrace();
System.out.println("FTP的IP地址可能错误,请正确配置。");
}catch(IOException e) {
e.printStackTrace();
System.out.println("FTP的端口错误,请正确配置。");
}returnftpClient;
}/** 从FTP服务器下载文件
*
* @param ftpHost FTP IP地址
* @param ftpUserName FTP 用户名
* @param ftpPassword FTP用户名密码
* @param ftpPort FTP端口
* @param ftpPath FTP服务器中文件所在路径 格式: ftptest/aa
* @param localPath 下载到本地的位置 格式:H:/download
* @param fileName 文件名称*/
public static voiddownloadFtpFile(String ftpHost, String ftpUserName,
String ftpPassword,intftpPort, String ftpPath, String localPath,
String fileName) {
FTPClient ftpClient= null;try{
ftpClient=getFTPClient(ftpHost, ftpUserName, ftpPassword, ftpPort);
ftpClient.setControlEncoding("UTF-8"); //中文支持
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.enterLocalPass