Datetime Sınıfı ve Özellikleri

Eyl 06, 2013

DateTime sınıfı, .NET altyapısında tarih ve saat ile ilgili düzenlemeler yapmak için kullanılır. DateTime yapısının statik olan birçok metot ve özelliği sayesinde tarih uygulamaları ile ilgili temel pratik işlemler gerçekleştirilebilir. Örneğin bir yılda kaç gün olduğu, artık yılın olup olmadığı, belirlenen herhangi bir ayda kaç gün olduğu gibi bilgiler elde edilebileceği gibi yıl, ay, gün, saat hatta milisaniye gibi zaman bileşenlerini istenilen sırada ekrana yazdırmak da mümkündür.

DateTime yapısının kullanılışı genel olarak şu şekildedir:

DateTime Tarih(yıl, ay, gün, saat, dakika, saniye, milisaniye);

DateTime Sınıfının Özellikleri

  • Now: Yerel bilgisayarın o anki tarih ve saatini döndürür.
  • Today: Yerel bilgisayarın o anki tarihini döndürür.
  • DayOfWeek: O günü (Pazar'dan Cumartesi'ne) karakter katarı (string) olarak döndürür.
  • Month: DateTime nesnesinin ay kısmını integer tipi olarak (int) döndürür.
  • DayOfYear: Bulunulan yılın gününü getirir.
  • UtcNow: O anki zamanın UTC (evrensel zaman) değerini döndürür.
  • Date: O anki tarihi DateTime tipinden döndürür. 
DateTime Sınıfının Bazı Önemli Metotları
  • AddDays, AddHours, AddMinutes, AddMilliseconds, AddMonths, AddYears: Belirtilen metotlarla istenilen sayıda gün, saat, dakika, milisaniye, ay veya yıl eklenmesi sağlanır.
  • ToBinary: Belirlenen DateTime nesnesini 64-bit binary (ikili) bir değere dönüştürür.
  • GetDateTimeFormats: Uygun datetime formatlarını döndürür.
  • ToLongDate String: LongDate tipinden değer döndürür.
  • ToString: Nesne.ToString(<parametre>) formatı ile DateTime nesnesi katara(string) çevrilir.
  • Compare(parametre1, parametre2): DateTime tipinden parametre1 ve parametre2 değerlerinden hangisinin büyük olduğunu döndürür.  Eğer parametre1  büyükse 1, parametre2  büyükse -1, iki tarih birbirine eşitse 0 değerini getirir.
  • Equals(DateTime): DateTime tipinden bir nesnenin, belirlenen bir diğer DateTime nesnesine eşit olup olmadığı ile ilgili bir değer döndürür.
  • Finalize:  Finalize metodu tıpkı destructorlar (yok edici) gibi çalışır, onlardan tek farkı kullanılmayan kaynakları garbage collectorın (çöp toplayıcı) yaptığı gibi otomatik olarak bırakmamasıdır.
  • IsLeapYear: Belirlenen yılın artık yıl olup olmadığını döndürür.
  • Parse (String): Belirlenen bir tarih ve saat katarını DateTime tipinden eşdeğerine çevirir.

DateTime tipi için örnek bir kod parçası aşağıdadır:

using System;
class Ornek
{
    static void Main()
    {
         DateTime zaman = DateTime.Now; 
         Console.WriteLine(zaman.ToLongDateString()); 
    }
}

Belirtilen örnek kod parçası ekrana o anki tarihi dd MMMM yyyy dddd şeklinde yazdıracaktır.
(Ör: 08 Ağustos 1990 Çarşamba)


Sadece saat, dakika, yıl bilgisine ihtiyaç duyulduğunda ya da belli tarih ve zaman bilgisi düzenlenmek istendiğinde ToString()  metodunun kullandığı temel karakter kulanımları aşağıdaki gibidir:
Format  Örnek Ekran Çıktısı 
MM/dd/yyyy  04/01/2007 
dddd, MMMM, dd, yyyy HH:mm  Pazar, Nisan 01, 2007, 02:09 
dddd, MMMM, dd, yyyy, HH:mm:ss  Pazar, Nisan 01, 2007, 02:09:05 
MM/dd/yyyy HH:mm  04/01/2007 02:09 PM 
MM/dd/yyyy HH:mm:ss  04/01/2007 02:09:05 PM 
MMMM dd  Nisan 01 
ddd, dd MM yyyy HH:mm:ss GMT  Paz, 01 Nis 2007 14:09:05 GMT 
yyyy-MM-dd T HH:mm:ss  2007-04-01 T 02:09:05 
HH:mm  02:09 PM 
HH:mm:ss  02:09:05 PM 
yyyy-MM-dd HH:mm:ssZ 2007-04-01 02:09:05Z
dddd, MMMM, dd, yyyy HH:mm  Pazar, Nisan 01, 2007 02:09 
yyyy, MMM  Nisan, 2007 

Temel karakter kullanımları ile ilgili örnek bir uygulama aşağıdadır:

using System;
class Program
{
    static void Main()
    {
    DateTime zaman = new DateTime(1990,8,8,10,42,0);
    
    Console.WriteLine(zaman.ToString("d"));
    Console.WriteLine(zaman.ToString("MM.dd.yyyy HH:mm")); 
    Console.WriteLine(zaman.ToString("ddd,dd MM yyyy HH:mm:ss 
       GMT"));
    }
}

Ekran çıktısı aşağıdaki gibi olacaktır:
08.08.1990
08.08.1990 10:42 
Çar, 08 08 1990 10:42:00 G8T

DateTime Sınıfı Alanları

  • MaxValue, MinValue: DateTime’ın uygun olan en geniş ve en  küçük değeri ni belirtir. Bu alanlar salt-okunurdur.

DateTime Sınıfı Operatörleri

  • GreaterThanOrEqual, LessThanOrEqual: Belirlenen bir DateTime nesnesinin diğer belirlenen bir DateTime nesnesi ile büyüklük, küçüklük, eşitlik karşılaştırmasını yaparlar.
  • Addition: Belirlenen tarih ve saate, istenilen zaman aralığının eklenmesini sağlar.
  • Subtraction(DateTime, DateTime): Belirlenen bir tarih ve saatten bir başka tarih ve saati çıkarır ve geriye  bir zaman aralığı döndürür.