У меня есть приложение java ee, где я использую сервлет для печати файла журнала, созданного с помощью log4j. При чтении файлов журналов вы обычно ищете последнюю строку журнала, и поэтому сервлет будет намного полезнее, если он напечатает файл журнала в обратном порядке. Мой фактический код:
response.setContentType("text");
PrintWriter out = response.getWriter();
try {
FileReader logReader = new FileReader("logfile.log");
try {
BufferedReader buffer = new BufferedReader(logReader);
for (String line = buffer.readLine(); line != null; line = buffer.readLine()) {
out.println(line);
}
} finally {
logReader.close();
}
} finally {
out.close();
}
Реализации, которые я нашел в Интернете, включают в себя использование StringBuffer и загрузку всего файла перед печатью, нет ли способа поиска кода в конце файла и чтения содержимого до начала файла