Мне интересно, какие типы программного поведения считаются «изменением» файла в java. То есть, какие операции, которые я мог бы выполнить в файле, заставили бы вызов file.lastModified() изменить его значение?Какие действия я мог бы выполнить в файле, который вызовет вызов file.lastModified() для изменения его значения?
I.E. Открытие? Чтение? Письмо? Копирование? Написание является очевидным триггером, но другие не столь очевидны. Я сделал несколько оглядываний в Интернете и не видел ничего незамедлительного.
Уточнение: я не привязываю, чтобы установить последнее измененное время, я просто пытаюсь определить, какие программные поведения, которые могла бы задействовать Java-программа, заставили бы это значение обновляться. Очевидно, что запись в файл будет делать это. Но есть ли другие случаи, которые могут вызвать это?
Флаг «Last Modified» является функцией операционной системы; java просто передает это значение вам. Все, что изменило бы один байт в файле, должно изменить дату «Last Modified»; так что [touch] (http://en.wikipedia.org/wiki/Touch_ (Unix)). –
Спасибо за ваш комментарий, я понимаю, что флаг является функцией ОС. Я пытаюсь преследовать то, что может вызвать обновление этого флага из моей программы. – Nathaniel
Вместо того, чтобы мы размышляли над тем, что может быть причиной, ваше время может быть лучше потрачено на отслеживание точки в вашем коде, с которой запускается изменение LastModified. –