apache ftp客户端在检索文件时在文件末尾添加新行

时间:2012-10-01 09:20:12

标签: ftp apache-commons

我正在使用apache ftp客户端下载文本文件。我的问题是,当我检索文件时,我总是在文件末尾找到一个新行。这是我的代码:

FTPClient ftpClient = new FTPClient();

    ftpClient.connect(ftpServer);
    ftpClient.login(ftpUser, ftpPassword);

    log.info("Connected to server " + ftpServer + ".");
    log.info(ftpClient.getReplyString());

    int reply = ftpClient.getReplyCode();

    if (!FTPReply.isPositiveCompletion(reply)) {
        ftpClient.disconnect();
        throw new Exception("error");
    }

    ftpClient.enterLocalPassiveMode();

    ByteArrayOutputStream output = new ByteArrayOutputStream();

    boolean result = ftpClient.retrieveFile(fileName, output);

    output.close();

    ftpClient.logout();

    if (ftpClient.isConnected()) {
        try {
            ftpClient.disconnect();
        } catch (IOException ioe) {
            // do nothing
        }
    }

    log.info("Disconnected from " + ftpServer + ".");

后来我使用以下方式阅读文件:

String value = new String(output.toByteArray(), "UTF-8");

任何人都可以帮助我吗? 感谢

1 个答案:

答案 0 :(得分:4)

试试: ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE); 它会有所帮助。