Загрузка файлов через FTP с примерами кода на Python, Java и PHP

Чтобы загрузить файл с помощью FTP (протокола передачи файлов), вы можете использовать несколько методов в зависимости от используемого вами языка программирования. Вот несколько примеров на разных языках:

  1. Python:

    import ftplib
    def upload_file_ftp(hostname, username, password, file_path, remote_dir):
    try:
        ftp = ftplib.FTP(hostname)
        ftp.login(username, password)
        ftp.cwd(remote_dir)
        with open(file_path, 'rb') as file:
            ftp.storbinary('STOR ' + file_path, file)
        ftp.quit()
        print('File uploaded successfully.')
    except ftplib.all_errors as e:
        print('FTP upload failed:', e)
    # Usage example
    upload_file_ftp('ftp.example.com', 'username', 'password', 'local_file.txt', 'remote_directory')
  2. Java:

    import org.apache.commons.net.ftp.FTP;
    import org.apache.commons.net.ftp.FTPClient;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    public class FTPUploader {
    public static void main(String[] args) {
        String server = "ftp.example.com";
        int port = 21;
        String user = "username";
        String password = "password";
        String localFile = "local_file.txt";
        String remoteDir = "remote_directory";
        FTPClient ftpClient = new FTPClient();
        try {
            ftpClient.connect(server, port);
            ftpClient.login(user, password);
            ftpClient.enterLocalPassiveMode();
            ftpClient.changeWorkingDirectory(remoteDir);
            File file = new File(localFile);
            FileInputStream fis = new FileInputStream(file);
            ftpClient.storeFile(file.getName(), fis);
            fis.close();
            ftpClient.logout();
            System.out.println("File uploaded successfully.");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (ftpClient.isConnected()) {
                    ftpClient.disconnect();
                }
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }
    }
    }
  3. PHP:

    <?php
    $server = 'ftp.example.com';
    $username = 'username';
    $password = 'password';
    $file = 'local_file.txt';
    $remoteDir = 'remote_directory';
    $ftpConn = ftp_connect($server);
    $login = ftp_login($ftpConn, $username, $password);
    if ($ftpConn && $login) {
    ftp_pasv($ftpConn, true);
    ftp_chdir($ftpConn, $remoteDir);
    $upload = ftp_put($ftpConn, basename($file), $file, FTP_BINARY);
    if ($upload) {
        echo 'File uploaded successfully.';
    } else {
        echo 'FTP upload failed.';
    }
    ftp_close($ftpConn);
    } else {
    echo 'FTP connection failed.';
    }
    ?>