Получить размер файла в реальном времени на JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Получить размер файла в реальном времени на Java

Сообщение Anonymous »

Существует API, который записывает файл в определенное местоположение, а фрагмент кода похож на ниже: < /p>
long lastUpdatedOn = System.currentTimeMillis();
try(BufferedOutputStream fileOutputStream = new BufferedOutputStream(new FileOutputStream(filePath, true))) {
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = bufferedInputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, bytesRead);
long now = System.currentTimeMillis();
if (now - lastUpdatedOn > 2 * 1000L) {
fileOutputStream.flush();
lastUpdatedOn = now;
}
}
< /code>
работает на фоне. Я хочу иметь API (наживу на определенном интервале), который должен вернуть размер файла в реальном времени. Предположим, что файл размером составляет 1 ГБ. Если содержимое файла 500 МБ записано в тот момент, когда я нажимаю на API, он должен вернуть этот размер файла.
У меня есть код, как ниже: < /p>
java.nio.file.Path path = Paths.get(destinationFullFolderPath.toString());
if (Files.exists(path)) {
resultMap.put(fileName, Files.size(path));
}
< /code>
Но я постоянно попадаю в этот API и получаю пустой результат, и я получаю результат после написания общего файла. Я в замешательстве, где я должен внести изменения. Стоит ли вносить изменения в API, который записывает файл или в API, который должен вернуть размер файлов в реальном времени.

Подробнее здесь: https://stackoverflow.com/questions/795 ... ze-in-java

Вернуться в «JAVA»