FileSystemInfo.LastWriteTime 屬性


取得或設定上次寫入目前檔案或目錄的時間。Gets or sets the time when the current file or directory was last written to.

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


上次寫入目前檔案的時間。The time the current file was last written.


Refresh() 無法初始化資料。Refresh() cannot initialize the data.

目前的作業系統不是 Windows NT 或更新版本。The current operating system is not Windows NT or later.

呼叫端嘗試設定無效的寫入時間。The caller attempts to set an invalid write time.


下列程式碼範例將示範如何透過「觸控」作業來更新 LastWriteTime 屬性。The following code example demonstrates the updating of the LastWriteTime property through a "touch" operation. 在此範例中,會「觸及」檔案,將 CreationTimeLastAccessTimeLastWriteTime 屬性更新為目前的日期和時間。In this example, the file is "touched", updating the CreationTime, LastAccessTime and LastWriteTime properties to the current date and time.

using System;
using System.IO;

namespace touch
    class Touch
        static void Main(string[] args)
            // Make sure a filename was provided.
            if (args.Length > 0)
                // Verify that the provided filename exists.
                if (File.Exists(args[0]))
                    FileInfo fi = new FileInfo(args[0]);
                        "Could not find the file: {0}.", args[0]);
                Console.WriteLine("No file was specified.");

        static void touchFile(FileSystemInfo fsi)
            Console.WriteLine("Touching: {0}", fsi.FullName);

            // Update the CreationTime, LastWriteTime and LastAccessTime.
                fsi.CreationTime = fsi.LastWriteTime = fsi.LastAccessTime =
            catch (Exception e)
                Console.WriteLine("Error: {0}", e.Message);
Imports System.IO

Public Class Touch
    Public Shared Sub Main(ByVal args() As String)

        ' Make sure an argument (filename) was provided.
        If args.Length > 0 Then

            ' Verify that the provided filename exists.
            If File.Exists(args(0)) Then
                Dim fi As FileInfo = New FileInfo(args(0))
                Console.WriteLine("Could not find the file {0}", args(0))
            End If
            Console.WriteLine("No file specified.")
        End If
    End Sub

    Public Shared Sub touchFile(ByVal fsi As FileSystemInfo)
        Console.WriteLine("Touching: {0}", fsi.FullName)

        ' Update the CreationTime, LastWriteTime and LastAccessTime.
            fsi.CreationTime = DateTime.Now
            fsi.LastAccessTime = DateTime.Now
            fsi.LastWriteTime = DateTime.Now
        Catch e As Exception
            Console.WriteLine("Error: {0}", e.Message)
        End Try

    End Sub

End Class



這個方法可能會傳回不正確的值,因為它會使用原生函式,其值可能不會由作業系統持續更新。This method may return an inaccurate value because it uses native functions whose values may not be continuously updated by the operating system.

如果 FileSystemInfo 物件的目前實例是從下列任何一種 DirectoryInfo 方法傳回,則會預先快取 LastWriteTime 屬性的值:The value of the LastWriteTime property is pre-cached if the current instance of the FileSystemInfo object was returned from any of the following DirectoryInfo methods:

若要取得最新的值,請呼叫 Refresh 方法。To get the latest value, call the Refresh method.

如果 FileSystemInfo 物件中所描述的檔案或目錄不存在,或是包含此檔案或目錄的檔案系統不支援這項資訊,則此屬性會傳回12:00 年1月 1601 1 日午夜If the file or directory described in the FileSystemInfo object does not exist, or if the file system that contains this file or directory does not support this information, this property returns 12:00 midnight, January 1, 1601 A.D. 西元國際標準時間(UTC),調整為當地時間。(C.E.) Coordinated Universal Time (UTC), adjusted to local time.