SORU
17 Temmuz 2009, Cuma


C yerelleştirme kullanmayı#

Ben sadece çalışmak için yerelleştirme almak için görünmüyor olabilir.

Sınıf kitaplığı var. Şimdi oluşturmak istiyorumresxdosyalar orada, ve bazı Değerleri iş parçacığı kültür temelli dönüş.

Bunu nasıl yapabilirim?

CEVAP
17 Temmuz 2009, Cuma


  • Bir Kaynak proje dosyası ("dizeleri.diyebilirsiniz Ekle") resx
  • Resx dosyasında bir dize kaynak eklemek ve iyi bir isim verin (örnek: "ve ona değer vermek""") Merhaba . Merhaba adı
  • Kaynak dosyayı kaydedin

Bu kodu çalıştırın:

Console.WriteLine(strings.Hello);

Baskı gerekir"". Merhaba

Şimdi, yeni bir kaynak dosyası, "dizeleri.isimli Ekle fr."(not "fr" bölümü; bu bir Fransız kaynakları içerir). resx Dizeleri ile aynı adı taşıyan bir dize kaynağı ekleyin.resx, ama Fransızca değeri (Ad="" Değer="") Merhaba. Merhaba Eğer aşağıdaki kodu çalıştırırsanız, yazdırma Merhaba:

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("fr-FR");
Console.WriteLine(strings.Hello);

Ne olur sistemi için bir kaynak arayacaktır "fr-FR". Kimse bulamaz (biz belirtilen "dosya"). fr beri Sonra kontrol etmek için geri düşecek "", bulduğu (ve kullanan). fr

, "":. Merhaba aşağıdaki kod yazdırır

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-US");
Console.WriteLine(strings.Hello);

Çünkü o does değil bulmak herhangi bir "en-US" kaynak ve aynı zamanda hiçbir "en" kaynak, çok daha kolay olacak sizler için varsayılan olan şu ekledik baştan beri.

Gerekirse daha fazla özel kaynakları ile dosyaları (örneğin dizeleri oluşturabilirsiniz.fr-FR.resx ve dizeleri.fr-CA.Fransa ve Kanada'da Fransızca için resx sırasıyla). Her bir dosya için geri çekilin ki kaynaktan farklı olan bu dizeler için kaynaklar eklemek gerekir. Eğer bir metin Fransa ve Kanada ile aynı ise, dizeleri bırakıyoruz.fr.Kanada Fransızcası farklıdır bu dizeler gitmek varken resx,.fr-CA.resx.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boogie2988

    boogie2988

    6 NİSAN 2006
  • ImBluecams

    ImBluecams

    25 Kasım 2012
  • InsideBlackBerry

    InsideBlackB

    14 Aralık 2009