Джава. Читайте файл с FTP, но НЕ загружайте его целиком - PullRequest
5 голосов
/ 14 мая 2010

Мне нужно прочитать заголовок файла CSV с FTP.

Поскольку эти файлы могут быть очень большими, мне не нужно их скачивать.

Есть ли способ прочитать первую строку файла CSV с FTP и прервать соединение?

1 Ответ

13 голосов
/ 14 мая 2010

Просто прочитайте только первую строку, проигнорируйте остаток и закройте поток. Умный FTP-клиент не буферизует поток весь в памяти, прежде чем предоставить что-либо для чтения.

Предполагается, что вы используете Apache Commons Net FTPClient :

BufferedReader reader = null;
String firstLine = null;

try {
    InputStream stream = ftpClient.retrieveFileStream(ftpFile.getName());
    reader = new BufferedReader(new InputStreamReader(stream, "UTF-8"));
    firstLine = reader.readLine();
} finally {
    if (reader != null) try { reader.close(); } catch (IOException logOrIgnore) {}
}

doYourThingWith(firstLine);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...