GetCreationTime Method

File.GetCreationTime Method

Returns the creation date and time of the specified file or directory.

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

public static DateTime GetCreationTime(
	string path


Type: System.String

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

Return Value

Type: System.DateTime
A DateTime structure set to the creation date and time for the specified file or directory. This value is expressed in local time.


The caller does not have the required permission.


path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.


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.


path is in an invalid format.


This method may return an inaccurate value, because it uses native functions whose values may not be continuously updated by the operating system.

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.

If the file described in the path parameter does not exist, this method returns 12:00 midnight, January 1, 1601 A.D. (C.E.) Coordinated Universal Time (UTC), adjusted to local time.

NTFS-formatted drives may cache file meta-info, such as file creation time, for a short period of time, which is known as "file tunneling." As a result, it may be necessary to explicitly set the creation time of a file if you are overwriting or replacing an existing file.

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

The following example demonstrates GetCreationTime.

using System;
using System.IO;

class Test 
    public static void Main() 
            // Get the creation time of a well-known directory.
            DateTime dt = Directory.GetCreationTime(

            // Give feedback to the user. 
            if (DateTime.Now.Subtract(dt).TotalDays > 364) 
                Console.WriteLine("This directory is over a year old.");
            else if (DateTime.Now.Subtract(dt).TotalDays > 30) 
                Console.WriteLine("This directory is over a month old.");
            else if (DateTime.Now.Subtract(dt).TotalDays <= 1) 
                Console.WriteLine("This directory is less than a day old.");
                Console.WriteLine("This directory was created on {0}.", dt);

        catch (Exception e) 
            Console.WriteLine("The process failed: {0}", e.ToString());

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

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

.NET Framework

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

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

© 2015 Microsoft