ZipArchiveEntry.LastWriteTime ZipArchiveEntry.LastWriteTime ZipArchiveEntry.LastWriteTime ZipArchiveEntry.LastWriteTime Property

Definice

Získá nebo nastaví čas poslední změny položky v archivu 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

Hodnota vlastnosti

Čas poslední změny položky v archivu zipThe last time the entry in the zip archive was changed.

Výjimky

Pokus o nastavení této vlastnosti se nezdařil, protože archiv zip pro položku je v Read režimu.The attempt to set this property failed, because the zip archive for the entry is in Read mode.

Režim archivu je nastaven na Createhodnotu.The archive mode is set to Create.

-nebo--or- Režim archivu je nastaven na Update hodnotu a položka byla otevřena.The archive mode is set to Update and the entry has been opened.

Došlo k pokusu o nastavení této vlastnosti na hodnotu, která je buď starší než 1980. ledna 1 0:00:00 (půlnoc) nebo vyšší než 2107.31 23:59:58 prosince (jedna sekunda před půlnocí).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).

Příklady

Následující příklad ukazuje, jak otevřít položku v archivu zip, upravit ji a nastavit LastWriteTime vlastnost na aktuální čas.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

Poznámky

Při vytvoření nové položky z existujícího souboru voláním CreateEntryFromFile metody LastWriteTime je vlastnost pro položku automaticky nastavena na čas poslední úpravy souboru.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. Když vytvoříte novou položku programově voláním CreateEntry metody LastWriteTime , vlastnost pro položku je automaticky nastavena na čas spuštění.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. Pokud položku upravíte, je nutné explicitně nastavit LastWriteTime vlastnost, pokud chcete, aby hodnota odrážela čas poslední změny.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.

Při nastavení této vlastnosti DateTimeOffset je hodnota převedena do formátu časového razítka, který je specifický pro archivy zip.When you set this property, the DateTimeOffset value is converted to a timestamp format that is specific to zip archives. Tento formát podporuje rozlišení dvou sekund.This format supports a resolution of two seconds. Nejstarší povolená hodnota je 1980. ledna 1 0:00:00 (půlnoc).The earliest permitted value is 1980 January 1 0:00:00 (midnight). Nejnovější povolená hodnota je 2107. prosince 31 23:59:58 (jedna sekunda před půlnocí).The latest permitted value is 2107 December 31 23:59:58 (one second before midnight). Pokud hodnota pro poslední čas zápisu není platná, vrátí vlastnost výchozí hodnotu 1980. ledna 1 0:00:00 (půlnoc).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).

Platí pro