Koray Kırdinli

Yazılım ve İş Yaşamı Hakkında Paylaşımlar

C# ile Globalization

Merhaba arkadaşlar bu makalemizde Globalization konusu üzerinde duracağız. .NET’te farklı coğrafi bölgeler için bölgesel ayarlar oluşturabilmekteyiz. Örneğin Türkiye’de tarih gün-ay-yıl ‘ken başka bir ülkede ay-gün-yıl olabilmekte. İşte burada standardı sağlayabilmek adına .NET içerisinde System.Globalization namespace’i kullanılmaktadır.

CultureInfo sınıfı çalıştığı bilgisayarda yüklü culture’ları alıp kullanabilmemizi sağlayan en temel sınıftır. Culture adı,takvimi,dili, ve alt dilleri temsil eder.

Culture’lar ‘en-US’ , ‘tr-TR’ gibi ifadelerle temsil edilirler
//Mevcut kullanıcının kültürünü almak

CultureInfo c = Thread.CurrentThread.CurrentCulture;          Console.WriteLine(String.Format(“Name:{0},DisplayName:{1},NativeName:{2},ISO:{3}”

    ,c.Name,c.DisplayName,c.NativeName,c.TwoLetterISOLanguageName));

Salary = (10000).ToString(“C”); //Eger tr ise 10.000,00 TL olacaktır.

//Mevcut Kültürleri listelemek

foreach (CultureInfo item inCultureInfo.GetCultures(CultureTypes.SpecificCultures))

     listCulture.Items.Add(item.Name); //en-US,tr-TR …

Bazen kültür bilgisi yeterli gelmez ve daha detaylı bilgiye ihtiyaç duyarız bu durumda RegionInfo devreye girer.

 

//Bölgesel bilgileri almak…

CultureInfo c = Thread.CurrentThread.CurrentCulture;

RegionInfo r = newRegionInfo(c.LCID);

Console.WriteLine(String.Format(“Display:{0},Currency Symbol:{1}”,

    r.DisplayName,r.CurrencySymbol));

 

 

//Mevcut bilgisayardaki kültürde haftanın günlerini listelemek. İstersek spesific bir kültürünki de listelenebilir.

CultureInfo c = Thread.CurrentThread.CurrentCulture;

String[] Days = c.DateTimeFormat.DayNames;

foreach (string day in Days)

{

    listDays.Items.Add(day);

}

//Ayları Listelemek

CultureInfo c = newCultureInfo(“en-US”);

String[] Months = c.DateTimeFormat.MonthNames;

foreach (string month in Months)

{

    listDays.Items.Add(month);

}

 

Mevcut kültürler dışında kendimiz custom kültürlerde oluşturabiliriz. Bunu CustureAndRegionInfoBuilder sınıfı ile yapabilmekteyiz.

 

Herkese iyi çalışmalar.

Reklamlar

Ekim 24, 2010 - Posted by | C# | , , , ,

Henüz yorum yapılmamış.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s