Я получил этот ответ от SharpZipLib Форум
Hi
Это, как представляется, быть ошибка WinZip. Я этого раньше не заметил.
Я сделал это испытание:
1) Использование WinZip, чтобы добавить файл в ZIP. В WinZip нажмите «Свойства» и «Подробности». Просмотрите список деталей и найдите отметку времени файла.
2) Используйте SharpZipLib для создания аналогичного zip-файла с тем же входным файлом. Откройте результат в Winzip и посмотрите Свойства> Подробности для отметки времени файла.
Мой входной файл имеет модифицированную временную метку (свойства файла) 2010-12-14 15:51:28, и в моем тесте SharpZipLib правильно сохранил ее в zip, в то время как WinZip сохранил ее как 2010-12-14 15 : 51: 30
Иными словами, WinZip добавляет 2 секунды при помещении его в почтовый индекс. После извлечения (с WinZip или SharpZip), Модифицировано сейчас 15:51:30 вместо оригинала 15:51:28.
Удивительно, что такая очевидная ошибка в WinZip может быть незарегистрированной и незафиксированной так долго. Если у вас есть платная версия, вы обязательно должны поднять с ними ошибку.
Я только что вспомнил кое-что о 2-секундной детализации в старых временных отметках файловой системы 8.3.
Быстрый Google нашел это ...
Quote «Original файловой системы DOS была только 32 байт для представления файла в каталоге. Очень ограничительный 8,3 файла и ограниченная зернистость (2 секунды) в дате файла является исправлено в файловых системах Win32 (VFAT)." от http://www.xxcopy.com/xxcopy15.htm
Формат Zip позволяет только 2 секунды зернистость в течение стандартного времени по дате и времени штампа entry.The кодируются в стандартном формате MS-DOS.
Необязательный NTFS Дополнительное поле данных (0x000A) может который может содержать последнее время модификации, время последнего доступа и время создания. WinZip не создает его. SharpZip будет использовать его, если он присутствует, но, насколько я могу судить, он не создается при использовании FastZip для создания zip-файла Это может быть полезным вариантом для добавления в код. Вы можете создать его вручную, если используете ZipFile.
Надеюсь, это поможет, David
Я не уверен, понимаю ли я ваш вопрос. Вы имеете в виду извлечение содержимого zip-файла с помощью Sharpziplib, которое изменило LastWriteTime zip-файла, и с WinZip изменяется только один раз на секунду? – 2010-12-15 09:01:13
@SoMoS: Не с winzip ... amctracting через код ... есть изменение в секундах ... для этого файла 1 секунда ... для других файлов разница 2 или 3 секунды есть – bala3569 2010-12-15 09:03:56
Просто смотришь с другого угла ; Вы уверены, что это извлечение, которое создает неправильные метки времени для извлеченных файлов, или это начальное представление, которое у вас есть (внутри zipfile, перед распаковкой), отображающее неправильные метки времени. Не знаете, как Zip хранит штампы даты, но я подозреваю, что это «секунды с 1-1 до 70». Один из двух, кажется, вычисляет это по-разному. – 2010-12-15 09:36:08