Merhabalar, C# CultureInfo ile Türkçe Gün Adını Almak dersimiz ile C# eğitim setime devam ediyorum. Bu yazımda yine eski blogger sitemden almayı unuttuğum bir yazımdır. Blogger blogumda yine duracak ama burada biraz daha ayrıntılı olarak incelemeye çalışacağım.
C# CultureInfo ile Türkçe Gün Adını Almak
CultureInfo terimini “Kültür Bilgisi” olarak çevirebiliriz. CultureInfo ile günlerin istediğimiz dildeki karşılığını bulabiliriz. Eğer projemiz farklı ülkelerden de kullanılacak ise bu sınıf bir çok noktada işimize yarayacaktır. Bu dersimizde Türkçe gün adlarını alma işlemine bakacağız.
CultureInfo sınıfını kullanabilmek için aşağıdaki namespace’i eklemeliyiz.
using System.Globalization;
Şimdi aşağıdaki kodları inceleyelim.
string _GunuVer_1 = DateTime.Now.ToString("dddd"); // Türkçe string _GunuVer_2 = DateTime.Now.DayOfWeek.ToString(); // İngilizce string _GunuVer_3 = DateTime.Parse("2020-01-08").DayOfWeek.ToString(); // İngilizce string _GunuVer_4 = CultureInfo.CurrentCulture.DateTimeFormat.DayNames[(int)DateTime.Now.DayOfWeek]; // Türkçe
Bu kodlara baktığımızda sonlarında yorumlarda gördüğünüz gibi hangi kod satırının hangi dilde dönüş yaptığını görebilirsiniz. Hepsi aynı işi yapmasına rağmen yazımları farklıdır. İlk 3 satırımız Gün Adını Almak kısmı için geçerlidir. Ancak bizim konumuzda CultureInfo var. Şu anda bizi ilgilendiren kısım son satır.
Yukarıda gördüğünüz kodların CultureInfo ile alınmış olanında bir dil belirtmeden aldık. Bu durumda projenin çalıştırıldığı bilgisayardaki sistemin diline göre çalışır. Ancak yine de bu durumu istemeyebilir ve farklı bir dilde göstermesini isteyebiliriz. Bu durumda kodumuzu biraz daha değiştirmeliyiz.
string _GunuVer_TR = CultureInfo.GetCultureInfo("tr-TR").DateTimeFormat.DayNames[(int)DateTime.Now.DayOfWeek]; string _GunuVer_DE = CultureInfo.GetCultureInfo("de-DE").DateTimeFormat.DayNames[(int)DateTime.Now.DayOfWeek];
Yukarıda gördüğünüz gibi hem Türkçe hem Almanca olarak günün adını nasıl alacağımızı görüyoruz. İlk verdiğimiz kodlardaki CultureInfo’da bir dil belirtmesi yapmamıştık ama burada parantez içerisinde istediğimiz dilde aldık.
İngilizce için en-US kullanabilirsiniz.
Bu yazımızında sonuna geldik dostlar.
C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.
Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…
Sağlıcakla ve takipte kalın.