Дорабатывал свою программу автоматического получения и обработки почты. Присылаемые данные я сохраняю в соответствующую папку. Причем для того, чтобы узнать - были ли уже получены эти данные, я проверяю наличие соответствующего присланного файла в папке. Проблема была в том, что иногда данные присылают повторно, причем имя файла - тоже самое что уже было. Естественно, что более старые данные - правильнее. Естественно, что алгоритм их отбрасывал, т.к. считал что эти данные он уже сохранил.
Самый простой способ решения проблемы - привязаться к датам файла и письма. Если дата письма больше даты файла, то такое письмо содержит новую версию файла и его необходимо заменить. Казалось бы - ну где тут можно найти проблемы?
А проблема-то очень интересная :) Делаем следующее:
- создаем файл с именем А
- переименовываем этот файл, например, в Б (некритично, можно и удалить)
- создаем файл с именем А
Вопрос - какое будет время создания
нового файла А?
Неа, не угадали - временем создания
нового файла А будет время создания
старого файла А.
Вот такие дела. В итоге пришлось принудительно ставить время создания файла :(