Feedback

C# - Die verfügbaren Kulturen auslesen

Veröffentlicht von am 18.10.2006
(2 Bewertungen)
Die statischen Methoden der CultureUtils-Klasse geben ein sortiertes Array aller, der spezifischen bzw. der neutralen Kulturen zurück.
// **********************************************
// Dies ist eines der 322 Rezepte aus dem
// C# 2005 Premium Codebook. 
// Das Snippet wurde vom Autor mit freundlicher 
// Genehmigung von Addison Wesley 
// bei dotnet-snippets.de veröffentlicht.
// **********************************************

public class CultureUtils
{
   /// <summary>
   /// Vergleichsklasse für Kulturen
   /// </summary>
   internal class CultureComparer : IComparer<CultureInfo>
   {
      /// <summary>
      /// Vergleicht die Namen zweier Kulturen
      /// </summary>
      public int Compare(CultureInfo x, CultureInfo y)
      {
         return x.EnglishName.CompareTo(y.EnglishName);
      }
   }

   /// <summary>
   /// Gibt die verfügbaren neutralen und spezifischen Kulturen zurück
   /// </summary>
   /// <returns>Gibt ein nach dem englischen Namen sortiertes Array
   /// von CultureInfo-Objekten zurück</returns>
   public static CultureInfo[] GetAllCultures()
   {
      // Die verfügbaren Kulturen einlesen
      System.Globalization.CultureInfo[] cultures =
         System.Globalization.CultureInfo.GetCultures(
         System.Globalization.CultureTypes.FrameworkCultures);

      // Sortieren
      Array.Sort(cultures, new CultureComparer());

      // Ergebnis zurückgeben
      return cultures;
   }

   /// <summary>
   /// Gibt die verfügbaren speziellen Kulturen zurück
   /// </summary>
   /// <returns>Gibt ein nach dem englischen Namen sortiertes Array
   /// von CultureInfo-Objekten zurück</returns>
   public static CultureInfo[] GetSpecificCultures()
   {
      // Die verfügbaren Kulturen einlesen
      System.Globalization.CultureInfo[] cultures =
         System.Globalization.CultureInfo.GetCultures(
         System.Globalization.CultureTypes.SpecificCultures);

      // Sortieren
      Array.Sort(cultures, new CultureComparer());

      // Ergebnis zurückgeben
      return cultures;
   }

   /// <summary>
   /// Gibt die verfügbaren neutralen Kulturen zurück
   /// </summary>
   /// <returns>Gibt ein nach dem englischen Namen sortiertes Array
   /// von CultureInfo-Objekten zurück</returns>
   public static CultureInfo[] GetNeutralCultures()
   {
      // Die verfügbaren Kulturen einlesen
      System.Globalization.CultureInfo[] cultures =
         System.Globalization.CultureInfo.GetCultures(
         System.Globalization.CultureTypes.NeutralCultures);

      // Sortieren
      Array.Sort(cultures, new CultureComparer());

      // Ergebnis zurückgeben
      return cultures;
   }
}
Abgelegt unter Kultur, CultureInfo, Lokalisierung.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!