У меня есть часть кода, которая генерирует новые данные всякий раз, когда есть новые данные, доступные как InputStream. Тот же файл перезаписывается каждый раз. Иногда файл становится 0 kb, прежде чем он будет написан. Вебсервис читает эти файлы через регулярные промежутки времени. Мне нужно избегать случая, когда файл равен 0 байтам.Java FileWriter overwrite
Как это сделать? Заблокирует ли помощь в этом случае? Если браузер зайдет, чтобы прочитать заблокированный файл, браузер продолжит показывать старые данные из кэша до тех пор, пока блокировка не будет выпущена, и файл будет доступен для чтения снова.
try{
String outputFile = "output.html";
FileWriter fWriter = new FileWriter(outputFile);
//write the data ...
fWriter .flush();
outputFile = "anotheroutput.html";
fWriter = new FileWriter(outputFile);
//write the data ...
fWriter .flush();
fWriter.close();
}
catch(Exception e)
{
e.prinStackTrace();
}
Я думаю, что вы ищете 'file.length()'. Этот метод возвращает размер файла в байтах. –