java使用ftp上传文件示例分享



import java.io.FileInputStream;
import java.io.IOException;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;

public class FTPUploadExample {

    public static void main(String[] args) {
        FTPClient ftpClient = new FTPClient();
        try {
            // 连接到FTP服务器
            ftpClient.connect("ftp.example.com", 21);
            // 登录到FTP服务器
            ftpClient.login("username", "password");

            // 设置FTP连接类型为二进制,防止文件传输中出现乱码
            ftpClient.setFileType(FTP.BINARY_FILE_TYPE);

            // 设置被动模式(针对某些服务器需要)
            ftpClient.enterLocalPassiveMode();

            // 文件路径
            String localFile = "C:/path/to/your/localfile.txt";
            // FTP服务器上的路径
            String remoteFile = "/path/to/remote/directory/filename.txt";

            // 上传文件
            FileInputStream fis = new FileInputStream(localFile);
            boolean success = ftpClient.storeFile(remoteFile, fis);
            fis.close();

            if (success) {
                System.out.println("文件上传成功!");
            } else {
                System.out.println("文件上传失败!");
            }

            // 登出FTP服务器
            ftpClient.logout();
            // 断开连接
            ftpClient.disconnect();

        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

此代码示例展示了如何使用Apache Commons Net库在Java中通过FTP协议上传文件。请确保已经添加了Apache Commons Net库到你的项目依赖中。注意替换`ftp.example.com`、`username`、`password`、`C:/path/to/your/localfile.txt`和`/path/to/remote/directory/filename.txt`为你自己的FTP服务器信息和文件路径。