Время последнего изменения файла изменяется только при закрытии файла.
public class Main {
public static void main(String[] args) throws IOException {
File f = new File("xyz.txt");
FileWriter fwr = new FileWriter(f);
System.out.println(f.lastModified());
fwr.write("asasdasdasd");
System.out.println(f.setLastModified(System.currentTimeMillis()));
fwr.flush();
System.out.println(f.lastModified());
fwr.close();
System.out.println(f.lastModified());
System.out.println(f.setLastModified(System.currentTimeMillis()));
}
}
Теперь, в моей настоящей программе, файл открывается, и один из потоков продолжает записывать файл. несколько других потоков должны знать, когда в последний раз были записаны какие-либо данные в файл.
Есть ли какой-нибудь возможный способ обновления последней модификации без закрытия файла?
(Я знаю, что переменная static
- long lastWriteTime
в потоке, который пишет файл, будет работать. Но мне просто интересно узнать, есть ли другой способ изменить время последнего изменения без закрытия файла.)