java使用ftp上傳文件

之前上傳文件只能在服務器創建文件,但是大小始終是0。搜了以後發現是ftp的被動模式

所以修改代碼

package com.cn.test;

import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;

import java.io.File;
import java.io.FileInputStream;


/**
 *
 * @author 呂孟亮
 *
 */
public class Test {
    public static void testFTPClient() {
        try {
            //創建一個FTPClient對象
            FTPClient ftpClient = new FTPClient();
            //創建ftp鏈接
            ftpClient.connect("*.*.*.*", 21);
            //登錄ftp,使用用戶名和密碼,沒有設置的話使用anonymous,密碼隨意
            ftpClient.login("anonymous", "");
            //讀取本地文件
            FileInputStream inputStream = new FileInputStream(new File("E:\\q.jar"));
            //設置爲被動模式(如上傳文件夾成功,不能上傳文件,註釋這行,否則報錯refused:connect  )
            ftpClient.enterLocalPassiveMode();
            //設置上傳路徑
            ftpClient.changeWorkingDirectory("pub/data");
            //修改上傳文件格式   2是二進制流
            ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
            System.out.println("1");
            //上傳文件
            ftpClient.storeFile("q2.jar", inputStream);
            System.out.println("2");
            //關閉鏈接
            ftpClient.logout();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        testFTPClient();
    }
}

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章