C# DateTime (Tarih Zaman)
- 1138
- (1)
- (5)
- 22 Haz 2017
Tarih ve saat değerlerini bellekte tutmak ve kullanmak için kullanılan değişken türü DateTime türüdür.
Sistem Zamanını Alma
DateTime.Now özelliği ile sistemin o anki saat ve tarihi DateTime türünden alınabilir.
DateTime dt = DateTime.Now;
// dt değişkeni bu satır çalıştığı andaki sistem tarih ve saati değerini aldı
DateTime dtUTC = DateTime.UtcNow;
// dtUTC değişkeni ise sistem UTC tarih ve saati değerini aldı
Tarih Saat Metin İşlemleri
DateTime türüne ait birçok string metodu bulunmaktadır.
DateTime dt = DateTime.Now;
string format1 = dt.ToLongDateString();
string format2 = dt.ToLongTimeString();
string format3 = dt.ToShortDateString();
string format4 = dt.ToShortTimeString();
string ozelFormat1 = dt.ToString("dd MMMM yyyy");
string ozelFormat2 = dt.ToString("dddd");
string ozelFormat3 = dt.ToString("HH::mm::ss");
string ozelFormat4 = dt.ToString("hh::mm::ss");
Console.WriteLine("ToLongDateString: " + format1);
Console.WriteLine("ToLongTimeString: " + format2);
Console.WriteLine("ToShortDateString: " + format3);
Console.WriteLine("ToShortTimeString: " + format4);
Console.WriteLine("dd MMMM yyyy: " + ozelFormat1);
Console.WriteLine("dddd: " + ozelFormat2);
Console.WriteLine("HH::mm::ss: " + ozelFormat3);
Console.WriteLine("hh::mm::ss: " + ozelFormat4);
Console.ReadKey();
DateTime türünde bir değeri string değerine dönüştürürken yukarıdaki gibi ToString metodu içerisine metin formatı girilebilir.
dsayı ile ayın gün değeri (tek veya çift haneli)ddsayı ile ayın gün değeri (çift haneli)dddyazı ile haftanın gün değeri (kısaltılmış Per, Cum gibi)ddddyazı ile haftanın gün değeri (tam metin)Msayı ile ay değeri (tek veya çift haneli)MMsayı ile ay değeri (çift haneli)MMMyazı ile ay değeri (kısaltılmış Tem, Ağu gibi)MMMMyazı ile ay değeri (tam metin)yyyıl değeri (çift haneli 2015 yerin 15, 2016 yerin 16 gibi)yyyyyıl değeri (dört haneli)H24 saatlik saat değeri (tek veya çift haneli)HH24 saatlik saat değeri (çift haneli)h12 saatlik saat değeri (tek veya çift haneli)hh12 saatlik saat değeri (çift haneli)mdakika değeri (tek veya çift haneli)mmdakika değeri (çift haneli)ssaniye değeri (tek veya çift haneli)sssaniye değeri (çift haneli)fffmilisaniye değeritt12 saatlik dilim için AM/PM değeri (Türkçe ÖÖ/ÖS olarak kullanılır)
Zaman Ekleme İşlemleri
DateTime türü bir değişkenin Add metodu TimeSpan türünden bir süre değerini ekleyip sonucu geri döndürür. Bunun yanı sıra AddMinutes, AddDays, AddMonths gibi metotları da kullanabilirsiniz. Aşağıda bu metotların nasıl kullanıldığı örnek içerisinde belirtilmiştir.
DateTime dt = new DateTime(2017, 6, 22, 23, 01, 04);
Console.WriteLine("Şimdi:\n" + dt.ToString("dd.MM.yyyy HH:mm:ss"));
dt = dt.AddMinutes(4);
Console.WriteLine("4 dk ilerisi:\n" + dt.ToString("dd.MM.yyyy HH:mm:ss"));
dt = dt.AddMonths(2);
Console.WriteLine("2 ay daha ilerisi:\n" + dt.ToString("dd.MM.yyyy HH:mm:ss"));
dt = dt.AddDays(-6);
Console.WriteLine("6 gün gerisi:\n" + dt.ToString("dd.MM.yyyy HH:mm:ss"));
dt = dt.Add(new TimeSpan(14, 2, 22, 16));
Console.WriteLine("14 gün 2 saat 22 dk 16 saat ilerisi:\n" + dt.ToString("dd.MM.yyyy HH:mm:ss"));
Console.ReadKey();
Programı çalıştırdığınızda şöyle bir çıktı alacaksınız.