Directory.SetLastWriteTime Method (String, DateTime)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Sets the date and time a directory was last written to.

Namespace:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

public static void SetLastWriteTime(
	string path,
	DateTime lastWriteTime


Type: System.String

The path of the directory.

Type: System.DateTime

The date and time the directory was last written to. This value is expressed in local time.

Exception Condition

The specified path was not found.


path is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters with the GetInvalidPathChars method.


path is null.


The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters and file names must be less than 260 characters.


The caller does not have the required permission.


The current operating system is not Windows NT or later.


lastWriteTime specifies a value outside the range of dates or times permitted for this operation.

The path parameter is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. To obtain the current working directory, see GetCurrentDirectory.

The path parameter is not case-sensitive.

For a list of common I/O tasks, see Common I-O Tasks.


These operating systems do not support this method.

The following example demonstrates how to use SetLastWriteTime.

using System;
using System.IO;

class Test 
    public static void Main() 
            string path = @"c:\MyDir";
            if (!Directory.Exists(path)) 
                // Take an action that will affect the write time.
                Directory.SetLastWriteTime(path, new DateTime(1985,4,3));

            // Get the last write time of a well-known directory.
            DateTime dt = Directory.GetLastWriteTime(path);
            Console.WriteLine("The last write time for this directory was {0}", dt);

            //Update the last write time.
            Directory.SetLastWriteTime(path, DateTime.Now);
            dt = Directory.GetLastWriteTime(path);
            Console.WriteLine("The last write time for this directory was {0}", dt);
        catch (Exception e) 
            Console.WriteLine("The process failed: {0}", e.ToString());


for writing to the specified file or directory. Associated enumeration: FileIOPermissionAccess.Write

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Return to top