ZipArchiveEntry.LastWriteTime 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
zip 보관 위치의 항목이 마지막으로 변경된 시간을 가져오거나 설정합니다.
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
속성 값
zip 보관 위치의 항목이 마지막으로 변경된 시간입니다.
예외
이 속성을 설정하려고 했으나 항목의 ZIP 보관 파일이 Read 모드 상태이므로 실패했습니다.
1980년 1월 1일 0:00:00(자정) 이전이나 2107년 12월 31일 23:59:58(자정 1초 전) 이후인 값으로 이 속성을 설정하려고 한 경우
설명
메서드를 호출 CreateEntryFromFile 하여 기존 파일에서 새 항목을 만들면 항목의 LastWriteTime 속성이 파일이 마지막으로 수정된 시간으로 자동으로 설정됩니다. 메서드를 호출 CreateEntry 하여 프로그래밍 방식으로 새 항목을 만들면 항목의 LastWriteTime 속성이 실행 시간으로 자동으로 설정됩니다. 항목을 수정하는 경우 값을 최신 변경 시간을 반영하려면 속성을 명시적으로 설정 LastWriteTime 해야 합니다.
이 속성을 DateTimeOffset 설정하면 값이 zip 보관과 관련된 타임스탬프 형식으로 변환됩니다. 이 형식은 2초의 해상도를 지원합니다. 허용되는 가장 빠른 값은 1980년 1월 1일 0:00:00(자정)입니다. 허용되는 최신 값은 2107년 12월 31일 23:59:58(자정 이전 1초)입니다. 마지막 쓰기 시간의 값이 유효하지 않으면 속성은 1980년 1월 1일 0:00:00(자정)의 기본값을 반환합니다.
예제
다음 예제에서는 zip 보관에서 항목을 열고 수정하고 속성을 현재 시간으로 설정하는 LastWriteTime 방법을 보여 줍니다.
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
적용 대상
.NET