Проблема с загрузкой Java FTP - PullRequest
0 голосов
/ 17 мая 2011
public static void main(String[] args) throws SocketException, IOException{
        FTPClient client = new FTPClient();
        FileInputStream fis = null;

        client.connect("ftp.someserver.co.uk",21);
        boolean login = client.login("webmaster@someserver.co.uk",
                "mypassword");


        String filename = "C:/Users/NAVEEN~1/AppData/Local/Temp/engine_3018683681918436492.xml";
        fis = new FileInputStream(new File(filename));
        if(client.storeFile("myfile.xml", fis)){
            System.out.println("yes");
        }else{
            System.out.println("no");

        }
        client.logout();
        fis.close();
    }

Этот код загружает файл так, как я хотел, но не загружает все его содержимое. Некоторого содержимого файлов там нет!

РЕДАКТИРОВАТЬ -1

Хорошо, теперь я создал статический файл и пытаюсь загрузить его, но опять та же ситуация.

Ответы [ 2 ]

2 голосов
/ 17 мая 2011

Я думаю, вам может понадобиться completePendingCommand. В соответствии с приведенным здесь примером, вы можете «вытолкнуть» данные самостоятельно, получив поток вывода и самостоятельно обработав копию байта.

http://commons.apache.org/net/apidocs/org/apache/commons/net/ftp/FTPClient.html#completePendingCommand()

2 голосов
/ 17 мая 2011

Не уверен, как генерируется файл, который вы пытаетесь загрузить. Но похоже, что это временный файл. Вы уверены, что он не удаляется / перезаписывается во время чтения из Java? Почему бы вам просто не сохранить статический файл на рабочем столе и попробовать загрузить его для ознакомления.

...