準備條件:java實現ftp上傳用到了commons-net-3.3.jar包
首先建立ftphost連接
public?boolean?connect(String?path,?String?addr,?int?port,?String?username,?String?password)?{try?{
//FTPClient?ftp?=?new?FTPHTTPClient(addr,?port,?username,?password);
ftp?=?new?FTPClient();
int?reply;
ftp.connect(addr);
System.out.println("連接到:"?+?addr?+?":"?+?port);
System.out.print(ftp.getReplyString());
reply?=?ftp.getReplyCode();
if?(!FTPReply.isPositiveCompletion(reply))?{
ftp.disconnect();
System.err.println("FTP目標服務器積極拒絕.");
System.exit(1);
return?false;
}else{
ftp.login(username,?password);
ftp.enterLocalPassiveMode();
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
ftp.changeWorkingDirectory(path);
System.out.println("已連接:"?+?addr?+?":"?+?port);
return?true;
}
}?catch?(Exception?ex)?{
ex.printStackTrace();
System.out.println(ex.getMessage());
return?false;
}
}
然後再利用ftpclient的makeDirectory方法創建文件夾
public?void?createDir(String?dirname){try{
ftp.makeDirectory(dirname);
System.out.println("在目標服務器上成功建立了文件夾:?"?+?dirname);
}catch(Exception?ex){
System.out.println(ex.getMessage());
}
}
斷開host連接
public?void?disconnect(){try?{
ftp.disconnect();
}?catch?(IOException?e)?{
e.printStackTrace();
}
}
最後是程序的調用方法
public?static?void?main(String[]?args)?{FtpUploadTest?ftpupload?=?new?FtpUploadTest();
if(ftpupload.connect("",?"172.39.8.x",?20,?"administrator",?"abc@123")){
ftpupload.createDir("/UPLOAD");
ftpupload.disconnect();
}
}