FileSystemInfo.LastWriteTime Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets the time when the current file or directory was last written to.
public:
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
Property Value
The time the current file was last written.
Exceptions
Refresh() cannot initialize the data.
The current operating system is not Windows NT or later.
The caller attempts to set an invalid write time.
Examples
The following code example demonstrates the updating of the LastWriteTime property through a "touch" operation. 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]);
touchFile(fi);
}
else
{
Console.WriteLine(
"Could not find the file: {0}.", args[0]);
}
}
else
{
Console.WriteLine("No file was specified.");
}
}
static void touchFile(FileSystemInfo fsi)
{
Console.WriteLine("Touching: {0}", fsi.FullName);
// Update the CreationTime, LastWriteTime and LastAccessTime.
try
{
fsi.CreationTime = fsi.LastWriteTime = fsi.LastAccessTime =
DateTime.Now;
}
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))
touchFile(fi)
Else
Console.WriteLine("Could not find the file {0}", args(0))
End If
Else
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.
Try
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
Remarks
Note
This method may return an inaccurate value because it uses native functions whose values may not be continuously updated by the operating system.
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:
To get the latest value, call the Refresh method.
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. (C.E.) Coordinated Universal Time (UTC), adjusted to local time.