Не скачивается файл с ftp

Код:

импортировать java.io.FileOutputStream; импортировать org.apache.commons.net.ftp.FTPClient;

public class FtpDownloader {

    // Server Credentials
    String host = "ip";
    String username = "user";
    String password = "pass";

    public static void main(String args[]) {
        new FtpDownloader().downloadFile();
    }

    public void downloadFile() {
        try {
            FTPClient client_ftp = new FTPClient();
            FileOutputStream fos = null;

            client_ftp.connect(host);
            client_ftp.login(username, password);

            System.out.println("Connected : " + client_ftp.isConnected());

            fos = new FileOutputStream("d://update_mac.txt");

            Boolean file_got = client_ftp.retrieveFile("/update/update_mac.txt", fos);

            System.out.println("Downloaded : " + file_got);

            fos.close();

            client_ftp.disconnect();

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

Как вы можете видеть, я пытаюсь загрузить файл с ftp-сервера, но когда я запускаю код, соединение устанавливается, но файл не загружается, он показывает 0 КБ в моей системе. Как вы думаете, в чем может быть причина?

заранее спасибо


person Jinith    schedule 05.03.2011    source источник
comment
Я также пробовал это javabeat.net/tips /36-file-upload-and-download-using-java.html, но затем он дает мне исключение неправильного URL-адреса, но когда я помещаю тот же URL-адрес в свой браузер, он дает мне файл.   -  person Jinith    schedule 05.03.2011
comment
FTPClient не является частью стандартного API Java, но его можно распознать как код из Apache Commons Net. В будущих вопросах, пожалуйста, явно указывайте сторонние библиотеки.   -  person BalusC    schedule 05.03.2011
comment
org.apache.commons.net.ftp.FTPClient; это API, который я использую   -  person Jinith    schedule 07.03.2011


Ответы (1)


Обязательно используйте одну из этих комбинаций параметров для вызова метода connect():

void    connect(InetAddress host)
void    connect(InetAddress host, int port)
void    connect(InetAddress host, int port, InetAddress localAddr, int localPort)
void    connect(String hostname)
void    connect(String hostname, int port)
void    connect(String hostname, int port, InetAddress localAddr, int localPort)

Возможно, вы пробовали connect("127.0.0.1"), которая не является одной из этих комбинаций.

person Bernd Elkemann    schedule 07.03.2011