java FTP上传文件到服务器

java FTP上传文件到服务器

以下所用到的包可以在http://download.csdn.net/sort/tag/edtftpj.zip下载。

import java.io.IOException;
import java.util.Properties;
import com.enterprisedt.net.ftp.FTPClient;
import com.enterprisedt.net.ftp.FTPConnectMode;
import com.enterprisedt.net.ftp.FTPException;
import com.enterprisedt.net.ftp.FTPMessageCollector;
import com.enterprisedt.net.ftp.FTPTransferType;

public class TestFtp {

 /**
  * @param args
  */
 public static void main(String[] args) {
  
   String FTPSERVER = "192.168.11.11";
    
      /**ftp server 端口,ftp默认的端口都是21*/
      int FTPPORT = 21;
    
      /**ftp 用户名 */
      String FTPUSER ="userName";
    
      /**ftp 用户密码 */
      String FTPPSWD ="******";
     
      /**文件存放的路径*/
      String filePath="D:/projects/TestProject/";
    
      /**文件名*/
      String fileName ="temp.txt";

    try { 
    FTPClient ftp= new FTPClient();
    ftp.setRemoteHost(FTPSERVER);
    ftp.setRemotePort(FTPPORT);
    ftp.setControlEncoding("GB2312");
    FTPMessageCollector listener = new FTPMessageCollector();
             ftp.setMessageListener(listener);  
             ftp.connect();
             ftp.login(FTPUSER,FTPPSWD);
             /**设置连接模式 */
             ftp.setConnectMode(FTPConnectMode.ACTIVE);
             /**设置传送模式  为二进制模式*/
             ftp.setType(FTPTransferType.BINARY);
             /**put(源,目的)这里的路径可以用相对路径或绝对路径*/
             ftp.put(filePath+fileName,fileName);

   /**可以用以下语句求出当前路径地址*/

   Properties p = System.getProperties();
             System.out.println("path: "+p.getProperty("user.dir"));
                ftp.quit();
    } catch (NumberFormatException e) {
     e.printStackTrace();
    } catch (IOException e) { 
     e.printStackTrace();
    } catch (FTPException e) {
     e.printStackTrace();
    }

 }

}

以上代码在JDK1.42中测试通过。

注意:这三句代码

 FTPClient ftp= new FTPClient();
    ftp.setRemoteHost(FTPSERVER);
    ftp.setRemotePort(FTPPORT);

FTPClient ftp= new FTPClient(FTPSERVER,FTPPORT);意思一样

但最好不要用后一句,是不被推荐使用的。我使用上面一句就报了

The FTP client has already been connected to the server. 

The requested action must be performed before a connection is established.

异常。

下载做法差不多了。自己摸索下吧~~

你可能感兴趣的:(java FTP上传文件到服务器)