用sun.net.ftp.FtpClient实现简单的Java FTP 上传文件代码例子

用sun.net.ftp.FtpClient实现简单的Java FTP 上传文件代码例子
java 代码
  1. package com.lph.test;  
  2.   
  3. import java.io.FileInputStream;  
  4. import java.io.IOException;  
  5.   
  6. import sun.net.TelnetOutputStream;  
  7. import sun.net.ftp.FtpClient;  
  8. /** 
  9.  * 用sun.net.ftp.FtpClient实现简单的Java FTP 上传文件代码例子 
  10.  * 
  11.  * <p>Title: is a Class</p> 
  12.  * 
  13.  * <p>Description: 类</p> 
  14.  * 
  15.  * <p>Copyright: Copyright (c) 2006</p> 
  16.  * 
  17.  * <p>Company: sunrise</p> 
  18.  * 
  19.  * @author islph 
  20.  * @version 1.0 
  21.  */  
  22. public class TestFtpClient {  
  23.   
  24.  /** 
  25.   * @param args 
  26.   */  
  27.  public static void main(String[] args) {  
  28.   // TODO 自动生成方法存根  
  29.   FtpClient ftpClient;  
  30.   String server = "localhost";  
  31.   String user = "user";  
  32.   String password = "password";  
  33.   String path = "/home/user/file";  
  34.   String filename = "sourcefile.txt";  
  35.   
  36.   try {  
  37.    // server:FTP服务器的IP地址;user:登录FTP服务器的用户名  
  38.    // password:登录FTP服务器的用户名的口令;path:FTP服务器上的路径  
  39.    ftpClient = new FtpClient();  
  40.    ftpClient.openServer(server);  
  41.    ftpClient.login(user, password);  
  42.    // path是ftp服务下主目录的子目录  
  43.    if (path.length() != 0)  
  44.     ftpClient.cd(path);  
  45.    // 用2进制上传  
  46.    ftpClient.binary();  
  47.   
  48.    TelnetOutputStream os = null;  
  49.    FileInputStream is = null;  
  50.    try {  
  51.     // "descfile.txt"用ftp上传后的新文件名  
  52.     os = ftpClient.put("descfile.txt");  
  53.     java.io.File file_in = new java.io.File(filename);  
  54.     if (file_in.length() == 0) {  
  55.      throw new Exception("上传文件为空!");  
  56.     }  
  57.     is = new FileInputStream(file_in);  
  58.     byte[] bytes = new byte[1024];  
  59.     int c;  
  60.     while ((c = is.read(bytes)) != -1) {  
  61.      os.write(bytes, 0, c);  
  62.     }  
  63.    } finally {  
  64.     if (is != null) {  
  65.      is.close();  
  66.     }  
  67.     if (os != null) {  
  68.      os.close();  
  69.     }  
  70.    }  
  71.    System.out.println("上传文件成功!");  
  72.   
  73.   } catch (Exception e) {  
  74.    e.printStackTrace();  
  75.   }  
  76.  }  
  77. }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值