1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
// **********************************************
// 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;
}
}
|