Export (0) Print
Expand All

Directory.SetCreationTime Method

Sets the creation date and time for the specified file or directory.

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

public static void SetCreationTime(
	string path,
	DateTime creationTime
)

Parameters

path
Type: System.String

The file or directory for which to set the creation date and time information.

creationTime
Type: System.DateTime

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

ExceptionCondition
FileNotFoundException

The specified path was not found.

ArgumentException

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.

ArgumentNullException

path is null.

PathTooLongException

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.

UnauthorizedAccessException

The caller does not have the required permission.

ArgumentOutOfRangeException

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

PlatformNotSupportedException

The current operating system is not Windows NT or later.

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.

Windows 95, Windows 98, Windows 98 Second Edition Platform Note: These operating systems do not support this method.

The following example illustrates the differences in output when using Coordinated Universal Time (UTC) output.

// This sample shows the differences between dates from methods that use 
//coordinated universal time (UTC) format and those that do not. 
using System;
using System.IO;

namespace IOSamples
{
  public class DirectoryUTCTime
  {
    public static void Main()
    {
	// Set the directory. 
      string n = @"C:\test\newdir";
		//Create two variables to use to set the time.
	  DateTime dtime1 = new DateTime(2002, 1, 3);
	  DateTime dtime2 = new DateTime(1999, 1, 1);

	//Create the directory. 
	  try
	  {
		  Directory.CreateDirectory(n);
	  }
	  catch (IOException e)
	  {
		  Console.WriteLine(e);
	  }

	//Set the creation and last access times to a variable DateTime value.
	  Directory.SetCreationTime(n, dtime1);
	  Directory.SetLastAccessTimeUtc(n, dtime1);

		// Print to console the results.
	  Console.WriteLine("Creation Date: {0}", Directory.GetCreationTime(n));
	  Console.WriteLine("UTC creation Date: {0}", Directory.GetCreationTimeUtc(n));
	  Console.WriteLine("Last write time: {0}", Directory.GetLastWriteTime(n));
	  Console.WriteLine("UTC last write time: {0}", Directory.GetLastWriteTimeUtc(n));
	  Console.WriteLine("Last access time: {0}", Directory.GetLastAccessTime(n));
	  Console.WriteLine("UTC last access time: {0}", Directory.GetLastAccessTimeUtc(n));

		//Set the last write time to a different value.
      Directory.SetLastWriteTimeUtc(n, dtime2);
	  Console.WriteLine("Changed last write time: {0}", Directory.GetLastWriteTimeUtc(n));
    }
  }
}
// Obviously, since this sample deals with dates and times, the output will vary 
// depending on when you run the executable. Here is one example of the output: 
//Creation Date: 1/3/2002 12:00:00 AM 
//UTC creation Date: 1/3/2002 8:00:00 AM 
//Last write time: 12/31/1998 4:00:00 PM 
//UTC last write time: 1/1/1999 12:00:00 AM 
//Last access time: 1/2/2002 4:00:00 PM 
//UTC last access time: 1/3/2002 12:00:00 AM 
//Changed last write time: 1/1/1999 12:00:00 AM

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft