Obtention de l'objet CultureInfo à partir du nom du pays ou de l'objet RegionInfo
Donné un code du pays, par exemple, "CH", comment puis-je obtenir un objet CultureInfo? Le code du pays est dynamique (change lors de l'exécution).
Je n'ai que le code de pays, et je veux savoir si il est possible de créer un objet CultureInfo de juste le code du pays. Il n'a pas d'importance exacte de la culture-je obtenir (fr-CH/fr-CH).
Je suis en train de faire quelque chose comme ceci:
CultureInfo c = CultureInfo.CreateSpecificCulture("CH");
Serait-il possible de créer une culture à partir d'un RegionInfo objet?
Ensuite, il devrait ressembler à ceci:
RegionInfo r= new RegionInfo("CH");
CultureInfo c = CultureInfo.CreateSpecificCulture(r);
Évidemment les exemples précédents ne compile pas, ils viennent de donner une idée de ce que je suis en train de réaliser.
source d'informationauteur Ben
Vous devez vous connecter pour publier un commentaire.
Si vous avez seulement le code de pays, vous pouvez utiliser quelque chose comme cela pour obtenir tous les culture infos associé à ce pays:
EDIT: ajout de
-
avantCH
pour prévenir un cas limite, comme l'a souligné @JeppeStigNielsen (voir les commentaires ci-dessous).Êtes-vous essayer de créer un objet CultureInfo ? comme ceci:
Peut-être que ce lien peut être utile http://www.csharp-examples.net/culture-names/ de montrer toutes les Cultures.
Bien sûr, c'est une vilaine chose à faire, parce qu'un pays (y compris votre exemple
"CH"
Suisse) peut avoir de nombreuses langues.Encore, je vous offre deux laid méthodes. Première:
Lorsqu'il est utilisé sur votre exemple,
new RegionInfo("CH")
il donne, sur ma version de la .NET Framework et ma version de Windows:La seconde méthode que je vais vous offrons:
Comme on le voit, il utilise des représentations internes de
mscorlib.dll
et nous ne savons jamais si elle va rompre avec les futures versions. Mais il ne vous donner un moyen de choisir une culture particulière. Sur ma machine, à partir denew RegionInfo("CH")
vous obtenezit-CH: Italian (Switzerland)
.