ZipArchiveEntry.LastWriteTime Özellik

Tanım

Zip arşivindeki girdinin en son ne zaman değiştirildiğini alır veya ayarlar.

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

Özellik Değeri

Zip arşivindeki girdinin en son değiştirildiği zaman.

Özel durumlar

Girdinin zip arşivi modunda olduğundan Read bu özelliği ayarlama girişimi başarısız oldu.

Arşiv modu olarak Createayarlanır.

-veya-

Arşiv modu olarak ayarlanır Update ve giriş açılır.

Bu özelliği 1980 Ocak 1 0:00:00'dan (gece yarısı) veya 2107 Aralık 23:59:58'den (gece yarısından bir saniye önce) önceki bir değere ayarlama girişiminde bulunuldu.

Açıklamalar

yöntemini çağırarak CreateEntryFromFile var olan bir dosyadan yeni bir girdi oluşturduğunuzda, girdinin LastWriteTime özelliği otomatik olarak dosyanın son değiştirildiği zamana ayarlanır. yöntemini çağırarak CreateEntry program aracılığıyla yeni bir giriş oluşturduğunuzda, girdinin LastWriteTime özelliği otomatik olarak yürütme zamanına ayarlanır. Girdiyi değiştirirseniz, değerin en son değişikliğin LastWriteTime zamanını yansıtmasını istiyorsanız özelliğini açıkça ayarlamanız gerekir.

Bu özelliği ayarladığınızda DateTimeOffset , değer zip arşivlerine özgü bir zaman damgası biçimine dönüştürülür. Bu biçim iki saniyelik bir çözünürlüğü destekler. İzin verilen en erken değer 1980 Ocak 1 0:00:00'dır (gece yarısı). İzin verilen en son değer 2107 Aralık 31 23:59:58'dir (gece yarısından bir saniye önce). Son yazma zamanının değeri geçerli değilse, özellik 1980 Ocak 1 0:00:00 (gece yarısı) varsayılan değerini döndürür.

Örnekler

Aşağıdaki örnekte zip arşivinde bir girdinin nasıl açılıp değiştirileceği ve özelliğin LastWriteTime geçerli saate nasıl ayarlanacağı gösterilmektedir.

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

Şunlara uygulanır