ZipArchiveEntry.LastWriteTime Свойство

Определение

Получает или задает время последнего изменения записи в ZIP-архиве.Gets or sets the last time the entry in the zip archive was changed.

public:
 property DateTimeOffset LastWriteTime { DateTimeOffset get(); void set(DateTimeOffset value); };
public DateTimeOffset LastWriteTime { get; set; }
member this.LastWriteTime : DateTimeOffset with get, set
Public Property LastWriteTime As DateTimeOffset

Значение свойства

DateTimeOffset

Время последнего изменения записи в ZIP-архиве.The last time the entry in the zip archive was changed.

Исключения

Попытка задать это свойство завершилась ошибкой, потому что ZIP-архив для записи находится в режиме Read.The attempt to set this property failed, because the zip archive for the entry is in Read mode.

Режим архива имеет значение Create.The archive mode is set to Create.

-или--or- Режим архива имеет значение Update, и запись была открыта.The archive mode is set to Update and the entry has been opened.

Была предпринята попытка присвоить этому свойству значение, более раннее, чем 1-ое января 1980 года 0:00:00 (полночь) или более позднее чем 31-ое декабря 2107 года 23:59:58 (за одну секунду до полуночи).An attempt was made to set this property to a value that is either earlier than 1980 January 1 0:00:00 (midnight) or later than 2107 December 31 23:59:58 (one second before midnight).

Примеры

В следующем примере показано, как открыть запись в ZIP-архиве, изменить ее и присвоить LastWriteTime свойству текущее время.The following example shows how to open an entry in a zip archive, modify it, and set the LastWriteTime property to the current time.

using System;
using System.IO;
using System.IO.Compression;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string zipPath = @"c:\example\result.zip";

            using (ZipArchive archive = ZipFile.Open(zipPath, ZipArchiveMode.Update))
            {
                ZipArchiveEntry entry = archive.GetEntry("ExistingFile.txt");
                using (StreamWriter writer = new StreamWriter(entry.Open()))
                {
                    writer.BaseStream.Seek(0, SeekOrigin.End);
                    writer.WriteLine("append line to file");
                }
                entry.LastWriteTime = DateTimeOffset.UtcNow.LocalDateTime;
            }
        }
    }
}
Imports System.IO
Imports System.IO.Compression

Module Module1

    Sub Main()
        Dim zipPath As String = "c:\example\result.zip"

        Using archive As ZipArchive = ZipFile.Open(zipPath, ZipArchiveMode.Update)
            Dim entry As ZipArchiveEntry = archive.GetEntry("ExistingFile.txt")

            Using writer As StreamWriter = New StreamWriter(entry.Open())
                writer.BaseStream.Seek(0, SeekOrigin.End)
                writer.WriteLine("append line to file")
            End Using
            entry.LastWriteTime = DateTimeOffset.UtcNow.LocalDateTime
        End Using
    End Sub

End Module

Комментарии

При создании новой записи из существующего файла путем вызова CreateEntryFromFile метода LastWriteTime свойство для записи автоматически устанавливается в момент последнего изменения файла.When you create a new entry from an existing file by calling the CreateEntryFromFile method, the LastWriteTime property for the entry is automatically set to the last time the file was modified. При создании новой записи программным путем путем вызова CreateEntry метода LastWriteTime свойству для записи автоматически присваивается время выполнения.When you create a new entry programmatically by calling the CreateEntry method, the LastWriteTime property for the entry is automatically set to the time of execution. При изменении записи необходимо явно задать свойство, если необходимо, LastWriteTime чтобы значение отражало время последнего изменения.If you modify the entry, you must explicitly set the LastWriteTime property if you want the value to reflect the time of the latest change.

При задании этого свойства DateTimeOffset значение преобразуется в формат метки времени, относящийся к zip-архивам.When you set this property, the DateTimeOffset value is converted to a timestamp format that is specific to zip archives. Этот формат поддерживает разрешение в два секунды.This format supports a resolution of two seconds. Самое раннее допустимое значение — 1980 января 1 0:00:00 (полночь).The earliest permitted value is 1980 January 1 0:00:00 (midnight). Последнее разрешенное значение — 2107 декабря 31 23:59:58 (одна секунда до полуночи).The latest permitted value is 2107 December 31 23:59:58 (one second before midnight). Если значение времени последней записи не является допустимым, свойство возвращает значение по умолчанию 1980 января 1 0:00:00 (полночь).If the value for the last write time is not valid, the property returns a default value of 1980 January 1 0:00:00 (midnight).

Применяется к