Java. Считайте файл из FTP, но не загружайте его целый

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

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

Существует ли способ считать первую строку файла CSV от соединения аварийного прекращения работы и FTP?

5
задан Carl Manaster 14 May 2010 в 14:25
поделиться

1 ответ

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

Предполагая, что вы используете 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);
13
ответ дан 18 December 2019 в 14:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: