Türkiye'de ilk Mobil & PC Aynı Anda Metin2 Oyna. Triarchonline kalıcı ve uzun ömürlü yapısı ile 24 Temmuz'da açılıyor. | 1-99 Mobil Metin2 Triarch HEMEN TIKLA!
C# dilini kullanırken yapacağımız tarih ve zaman içeren işlemler için DateTime ve TimeSpan yapılarını kullanırız. Bu iki yapı, “System” isim alanı içerisinde yer almaktadır.
DateTime Yapısının oluşturulması
Bir DateTime yapısı oluşturabilmek için birden fazla yapıcı metot bulunmaktadır. Bunlardan yaygın olarak kullanılanları örneklerde kullanacağım. Tümünü bu
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
inceleyebilirsiniz.
Kod:
DateTime yeniTarih = new DateTime(yıl , ay, gün);
DateTime yeniTarih2 = new DateTime(yıl , ay, gün,saat,dakika,saniye);
DateTime ile bugünün tarihi yazılması
Şimdi DateTime yapısına basit bir örnek ile başlayalım. Uygulamamızda o an bulunulan tarihi ekranda gösterelim. Bugünün tarihini alırken doğrudan DateTime yapısına “.Now” özelliği ile erişebiliriz.Bugünün tarihini gösterirken iki farklı seçeneğimiz vardır.
Kod:
static void Main(string[] args)
{
DateTime bugun = DateTime.Now;
Console.WriteLine("Uygulamayı " + bugun + " tarihinde çalıştırdın.");
}
Now: bulunulan tarih ile beraber saat bilgisini de verir.
Today: sadece bulunulan tarihi verir. Saat bilgisini “00:00:00” olarak gösterir.
Today ile beraber tarih yazdırılması;
Kod:
static void Main(string[] args)
{
DateTime bugun = DateTime.Today;
Console.WriteLine("Uygulamayı çalıştırdığın gün: " + bugun + ".");
}
Belirli bir tarih oluşturma
Şimdi kendimiz bir DateTime yapısı oluşturalım. Bunun için DateTime’ın yapıcı metotlarından birini kullanacağız.
Kod:
static void Main(string[] args)
{
DateTime tarih= new DateTime(2017,11,10, 9,5,0);
Console.WriteLine(tarih + " tarihinde M.Kemal Atatürk aramızdan ayrıldı.");
}
DateTime Özellikleri
DateTime yapısındaki bir değişkenimize ait kullanabileceğimiz özellikler;| Adı | Açıklama |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarih bileşenini alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen ayın gününü alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen haftanın gününü alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen yılın günü alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen tarih saat bileşenini alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen zaman yerel saat, Eşgüdümlü Evrensel Saat (UTC) ve bunların hiçbiri göre gösteren bir değer alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen tarih milisaniye bileşeninin alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen tarih dakika bileşenini alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen tarih ay bileşenini alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Alır bir DateTime geçerli tarih ve saat bu bilgisayarda, yerel zaman olarak ifade edilen ayarlanır nesnesi. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Tarihin saniye bileşenini bu örneği tarafından temsil edilen alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Tarihi temsil eden ticks sayısını ve bu örneğinin saati alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek için günün saatini alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Geçerli tarihi alır. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Alır bir DateTime Geçerli tarih ve saati Eşgüdümlü Evrensel Saat (UTC) olarak ifade edilen, bu bilgisayarda ayarlanmış nesnesi. |
|
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
| Bu örnek tarafından temsil edilen tarihin Yıl bileşenini alır. |
Sık Kullanılan Yardımcı Metotlar
AddDays(gün) : belirtilen gün sayısı kadar mevcut tarihe gün eklemesi yapar.
AddHours(saat) : belirtilen saat kadar mevcut tarihe saat eklemesi yapar.
AddMiliseconds(milisaniye) : belirtilen milisaniye kadar mevcut tarihe milisaniye eklemesi yapar.
AddMinutes(dakika) : belirtilen dakika kadar mevcut tarihe dakika eklemesi yapar.
AddMonths(ay) : belirtilen ay kadar mevcut tarihe ay eklemesi yapar.
AddSeconds(saniye) : belirtilen saniye kadar mevcut tarihe saniye eklemesi yapar.
AddYears(yıl) : belirtilen yıl kadar mevcut tarihe yıl eklemesi yapar.
Subtract(çıkarılacak DateTime) : mevcut tarihten verilen DateTime tipinde yeni tarihi çıkartır.
Subtract(çıkarılacak TimeSpan) : mevcut tarihten verilen TimeSpan tipinde yeni tarihi çıkartır.
ToString() : mevcut tarihi string türüne dönüştürür. Format belirtilmiş işe, belirtilen formatta dönüşüm yapılır.
Yardımcı metotların kullanımı
Örnek olarak, yıl başını ve bir sonraki yıl başını bize gösteren bir uygulama yazalım.
Kod:
static void Main(string[] args)
{
DateTime tarih= new DateTime(2017,1,1);
Console.WriteLine(tarih + " tarihi yeni yıl başlangıcıdır.");
tarih = tarih.AddYears(1);
Console.WriteLine(tarih + " tarihi de yeni yıl başlangıcıdır.");
}
ki tarih arasındaki gün sayısını bulmak
Vermiş olduğumuz iki tarih arasındaki gün sayısını hesaplayan bir başka örnek c# uygulaması yazalım.İki tarih arasındaki farkı hesaplarken metot bize TimeSpan türünde dönüş yapacaktır. Bunun için farkı elde ederken bir TimeSpan türünde değişkene almamız gerekecektir.
TimeSpan türündeki değişkene TotalDays özelliğini kullanarak bize aradaki farkı gün cinsinden verecektir.
Kod:
static void Main(string[] args)
{
DateTime ilkTarih = new DateTime(2017, 12, 3);
DateTime ikinciTarih = new DateTime(2018, 1, 1);
TimeSpan span = ikinciTarih.Subtract(ilkTarih);
Console.WriteLine("{0} gün sonra 2018 yılına gireceğiz.", span.TotalDays);
}
Kullanabileceğiniz diğer TimeSpan özellikleri;
TotalHour : farkı saat cinsinden verir.
TotalMilisecond : farkı milisaniye cinsinden verir.
TotalMinutes : farkı dakika cinsinden verir.
TotalSeconds : farkı saniye cinsinden verir.
Verilen tarihin hangi gün olduğunu bulmak
Oluşturuduğumuz tarihe DayOfWeek ekleyerek, o güne ait ismi DayOfWeek türünde alabiliriz.
Kod:
static void Main(string[] args)
{
DateTime bugun = DateTime.Now;
Console.WriteLine("Bugün günlerden: " + bugun.DayOfWeek);
}
Tarih ve Saatin formatlı gösterimi
Elimizdeki DateTime değişkenini ekranda gösterirken farklı formatlarda göstermemiz gerekebilir. Bu gibi durumlar için bir takım kısaltmalardan ve söz dizimlerinden faydalanırız. Bunlar aşağıdaki gibidir.
Kod:
static void Main()
{
DateTime tarih = DateTime.Now;//bugünün tarihinin alınması
string format = "MMM ddd d HH:mm yyyy";//tarihe uygulanacak format.
Console.WriteLine(tarih.ToString(format));
}
Kod:
Dec Sun 22 23:15 2017
Kod:
MMM üç karakterli ay ismi
ddd üç karakterli gün ismi
d bulunulan günün rakamsal değeri
HH 24 saatlik gösterimde saat değeri
h 12 saatlik gösterimde saat değeri
mm iki basamaklı dakika değeri
yyyy dört basamaklı yıl değeri
yy iki basamaklı yıl değeri(son iki basamak)
Tek karakterli formatlar
Kod:
static void Main()
{
DateTime tarih = DateTime.Now;
Console.WriteLine(tarih.ToString("d"));
Console.WriteLine(tarih.ToString("D"));
Console.WriteLine(tarih.ToString("f"));
Console.WriteLine(tarih.ToString("F"));
Console.WriteLine(tarih.ToString("g"));
Console.WriteLine(tarih.ToString("G"));
Console.WriteLine(tarih.ToString("m"));
Console.WriteLine(tarih.ToString("M"));
Console.WriteLine(tarih.ToString("o"));
Console.WriteLine(tarih.ToString("O"));
Console.WriteLine(tarih.ToString("s"));
Console.WriteLine(tarih.ToString("t"));
Console.WriteLine(tarih.ToString("T"));
Console.WriteLine(tarih.ToString("u"));
Console.WriteLine(tarih.ToString("U"));
Console.WriteLine(tarih.ToString("y"));
Console.WriteLine(tarih.ToString("Y"));
}
Kod:
d 3.12.2017
D 3 Aralık 2017 Pazar
f 3 Aralık 2017 Pazar 22:41
F 3 Aralık 2017 Pazar 22:41:50
g 3.12.2017 22:41
G 3.12.2017 22:41:50
m 3 Aralık
M 3 Aralık
o 2017-12-03T22:41:50.5366721+03:00
O 2017-12-03T22:41:50.5366721+03:00
s 2017-12-03T22:41:50
t 22:41
T 22:41:50
u 202024-03-06 22:41:50Z
U 3 Aralık 2017 Pazar 19:41:50
y Aralık 2017
Y Aralık 2017
DateTime string dönüşümü
Kod:
static void Main(string[] args)
{
DateTime tarih = DateTime.Now;
Console.WriteLine(tarih.ToLongDateString()); // D.
Console.WriteLine(tarih.ToLongTimeString()); // T.
Console.WriteLine(tarih.ToShortDateString()); // d.
Console.WriteLine(tarih.ToShortTimeString()); // t.
Console.WriteLine(tarih.ToString());
}
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 2
- Görüntüleme
- 212
