Directory.GetCreationTime(String) Method
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 the creation date and time of a directory.
public:
static DateTime GetCreationTime(System::String ^ path);
public static DateTime GetCreationTime (string path);
static member GetCreationTime : string -> DateTime
Public Shared Function GetCreationTime (path As String) As DateTime
Parameters
- path
- String
The path of the directory.
Returns
A structure that is set to the creation date and time for the specified directory. This value is expressed in local time.
Exceptions
The caller does not have the required permission.
.NET Framework and .NET Core versions older than 2.1: path
is a zero-length string, contains only white space, or contains one or more invalid characters. You can query for invalid characters by using the GetInvalidPathChars() method.
path
is null
.
The specified path, file name, or both exceed the system-defined maximum length.
Examples
The following example gets the creation time of the specified directory.
using namespace System;
using namespace System::IO;
int main()
{
try
{
// Get the creation time of a well-known directory.
DateTime dt = Directory::GetCreationTime( Environment::CurrentDirectory );
// 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." );
}
else
{
Console::WriteLine( "This directory was created on {0}", dt );
}
}
catch ( Exception^ e )
{
Console::WriteLine( "The process failed: {0}", e );
}
}
using System;
using System.IO;
class Test
{
public static void Main()
{
try
{
// Get the creation time of a well-known directory.
DateTime dt = Directory.GetCreationTime(Environment.CurrentDirectory);
// 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.");
}
else
{
Console.WriteLine("This directory was created on {0}", dt);
}
}
catch (Exception e)
{
Console.WriteLine("The process failed: {0}", e.ToString());
}
}
}
open System
open System.IO
try
// Get the creation time of a well-known directory.
let dt = Directory.GetCreationTime Environment.CurrentDirectory
// Give feedback to the user.
if DateTime.Now.Subtract(dt).TotalDays > 364 then
printfn "This directory is over a year old."
elif DateTime.Now.Subtract(dt).TotalDays > 30 then
printfn "This directory is over a month old."
elif DateTime.Now.Subtract(dt).TotalDays <= 1 then
printfn "This directory is less than a day old."
else
printfn $"This directory was created on {dt}"
with e ->
printfn $"The process failed: {e}"
Imports System.IO
Public Class Test
Public Shared Sub Main()
Try
' Get the creation time of a well-known directory.
Dim dt As DateTime = Directory.GetCreationTime(Environment.CurrentDirectory)
' Give feedback to the user.
If DateTime.Now.Subtract(dt).TotalDays > 364 Then
Console.WriteLine("This directory is over a year old.")
ElseIf DateTime.Now.Subtract(dt).TotalDays > 30 Then
Console.WriteLine("This directory is over a month old.")
ElseIf DateTime.Now.Subtract(dt).TotalDays <= 1 Then
Console.WriteLine("This directory is less than a day old.")
Else
Console.WriteLine("This directory was created on {0}", dt)
End If
Catch e As Exception
Console.WriteLine("The process failed: {0}", e.ToString())
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.
This method is equivalent to File.GetCreationTime.
If the directory 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.
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 case-sensitivity of the path
parameter corresponds to that of the file system on which the code is running. For example, it's case-insensitive on NTFS (the default Windows file system) and case-sensitive on Linux file systems.
For a list of common I/O tasks, see Common I/O Tasks.