проблема загрузки файлов клиента ftp apache commons - PullRequest
2 голосов
/ 02 марта 2012

У меня есть несколько файлов Excel локально на моей машине. Я хочу загрузить этот файл Excel на FTP. Я использую Apache Commons FTPClinet. Но когда он загружает файл, он поврежден и его размер равен нулю. Вот пример программы

Может кто-нибудь указать мне, где я делаю неправильно?

public class App {
    private static final String server = "localhost";
    private static final String username = "test";
    private static final String password = "test";
    private static final String directory = "/home/files";

    public static void main(String[] args) throws SocketException, IOException {
        FTPClient f = new FTPClient();
        f.connect(server);
        f.login(username, password);
        f.setFileType(FTPClient.BINARY_FILE_TYPE);
        InputStream is = null;

        is = new FileInputStream("c:\\tmp\\output.xls");
        Boolean isStored = f.storeFile("status.xls", is);
        is.close();
    }
}

1 Ответ

0 голосов
/ 02 марта 2012

Не используйте f.setFileType(FTPClient.BINARY_FILE_TYPE); Удалите эту строку.

Файлы Excel не являются двоичными, их следует передавать в формате ascii, который, по-моему, является стандартным для apache commons FTPClient.

Я не проверял это.Попробуйте.

Также измените с InputStream на FileInputStream

...