ftp文件上传

来源:互联网 发布:生产玩具知乎 编辑:程序博客网 时间:2024/05/19 00:12
1.创建一个FTPClient
FTPClient ftp = new FTPClient();
2.设置ftp上传文件编码格式
ftp.setControlEncoding("GBK");
3.设置ftp连接超时
ftp.setConnectTimeout(10000);
4.连接ftp服务器
ftp.login(username, password);
5.获取连接状态
int reply;
reply = ftp.getReplyCode();
6.判断连接状态
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
return success;
}
7.设置PassiveMode传输   设为被动 
ftp.enterLocalPassiveMode();
8.设置文件类型,登陆后设置文件类型为二进制否则可能导致乱码文件无法打开 
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
9.根据传入的文件路径创建文件,切换工作路径
if(path!=null&&!path.equals("")){
String[] paths = path.split("/");
for(int i=0;i<paths.length;i++){
if(!ftp.changeWorkingDirectory(paths[i])){
ftp.makeDirectory(paths[i]);
ftp.changeWorkingDirectory(paths[i]);
}
}
}else{
ftp.makeDirectory(path);
ftp.changeWorkingDirectory(path);
}
10.写入数据,返回的是true/false
ftp.storeFile(filename, input);
input.close();
ftp.logout();
11.关闭所有的接口
if (ftp.isConnected()) {
try {
ftp.disconnect();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
原创粉丝点击