edtFTPj的FileTransferClient类简单易用,而且下载的组件包中文档丰富,参考使用,完全能满足自己需要。
下载地址为: http://www.enterprisedt.com/index.html
废话不多说,上代码:
- public class EdtFtpFreeTest{
- public static void main(String[]args){
- Stringftp_url= "127.0.0.1" ;
- Stringftp_username= "username" ;
- Stringftp_password= "password" ;
- Stringftp_path= "remotepath" ;
- //本地文件路径
- Stringfile_path= "localpathname" ;
- //上传服务器上文件名
- StringremoteFile= "remotefilename" ;
- FileTransferClientftp= new FileTransferClient();
- try {
- ftp.setRemoteHost(ftp_url);
- ftp.setUserName(ftp_username);
- ftp.setPassword(ftp_password);
- ftp.connect();
- ftp.setContentType(FTPTransferType.BINARY);
- ftp.changeDirectory(ftp_path);
- //直接上传
- ftp.uploadFile(file_path,remoteFile,WriteMode.RESUME);
- //构造文件流上传
- OutputStreamos=ftp.uploadStream(remoteFile);
- FileInputStreamis= new FileInputStream(file_path);
- byte []bytes= new byte [ 1024 ];
- int c;
- while ((c=is.read(bytes))!=- 1 ){
- os.write(bytes, 0 ,c);
- }
- is.close();
- os.close();
- is= null ;
- os= null ;
- ftp.disconnect();
- } catch (FTPExceptione){
- e.printStackTrace();
- } catch (IOExceptione){
- e.printStackTrace();
- }
- }
- }