Directory.SetCreationTime(String, DateTime) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengatur tanggal dan waktu pembuatan untuk file atau direktori yang ditentukan.
public:
static void SetCreationTime(System::String ^ path, DateTime creationTime);
public static void SetCreationTime (string path, DateTime creationTime);
static member SetCreationTime : string * DateTime -> unit
Public Shared Sub SetCreationTime (path As String, creationTime As DateTime)
Parameter
- path
- String
File atau direktori untuk mengatur informasi tanggal dan waktu pembuatan.
- creationTime
- DateTime
Tanggal dan waktu file atau direktori terakhir ditulis. Nilai ini dinyatakan dalam waktu setempat.
Pengecualian
Jalur yang ditentukan tidak ditemukan.
versi .NET Framework dan .NET Core yang lebih lama dari 2.1: path
adalah string panjang nol, hanya berisi spasi kosong, atau berisi satu atau beberapa karakter yang tidak valid. Anda dapat mengkueri karakter yang GetInvalidPathChars() tidak valid dengan metode .
path
adalah null
.
Jalur yang ditentukan, nama file, atau keduanya melebihi panjang maksimum yang ditentukan sistem.
Pemanggil tidak memiliki izin yang diperlukan.
creationTime
menentukan nilai di luar rentang tanggal atau waktu yang diizinkan untuk operasi ini.
Sistem operasi saat ini bukan Windows NT atau yang lebih baru.
Contoh
Contoh berikut mengilustrasikan perbedaan output saat menggunakan output Waktu Universal Terkoordinasi (UTC).
// This sample shows the differences between dates from methods that use
//coordinated universal time (UTC) format and those that do not.
using namespace System;
using namespace System::IO;
int main()
{
// Set the directory.
String^ n = "C:\\test\\newdir";
//Create two variables to use to set the time.
DateTime dtime1 = DateTime(2002,1,3);
DateTime dtime2 = 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
// 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
// This sample shows the differences between dates from methods that use
//coordinated universal time (UTC) format and those that do not.
open System
open System.IO
// Set the directory.
let n = @"C:\test\newdir"
//Create two variables to use to set the time.
let dtime1 = DateTime(2002, 1, 3)
let dtime2 = DateTime(1999, 1, 1)
//Create the directory.
try
Directory.CreateDirectory n |> ignore
with :? IOException as e ->
printfn $"{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.
printfn $"Creation Date: {Directory.GetCreationTime n}"
printfn $"UTC creation Date: {Directory.GetCreationTimeUtc n}"
printfn $"Last write time: {Directory.GetLastWriteTime n}"
printfn $"UTC last write time: {Directory.GetLastWriteTimeUtc n}"
printfn $"Last access time: {Directory.GetLastAccessTime n}"
printfn $"UTC last access time: {Directory.GetLastAccessTimeUtc n}"
//Set the last write time to a different value.
Directory.SetLastWriteTimeUtc(n, dtime2)
printfn $"Changed last write time: {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
' This sample shows the differences between dates from methods that use
'coordinated universal time (UTC) format and those that do not.
Imports System.IO
Public Class DirectoryUTCTime
Public Shared Sub Main()
' Set the directory.
Dim n As String = "C:\test\newdir"
'Create two variables to use to set the time.
Dim dtime1 As New DateTime(2002, 1, 3)
Dim dtime2 As New DateTime(1999, 1, 1)
'Create the directory.
Try
Directory.CreateDirectory(n)
Catch e As IOException
Console.WriteLine(e)
End Try
'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))
End Sub
End Class
' 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
Keterangan
Parameter path
diizinkan untuk menentukan informasi jalur relatif atau absolut. Informasi jalur relatif ditafsirkan relatif terhadap direktori kerja saat ini. Untuk mendapatkan direktori kerja saat ini, lihat GetCurrentDirectory.
Sensitivitas path
huruf besar/kecil parameter sesuai dengan sistem file tempat kode berjalan. Misalnya, ini tidak peka huruf besar/kecil pada NTFS (sistem file Windows default) dan peka huruf besar/kecil pada sistem file Linux.