10
votes

Convertir DateTime de l'anglais en espagnol

Quelqu'un peut-il savoir comment convertir un DateTime de l'anglais en espagnol?

E.g Convertir:

lundi 01 janvier 2011

dans

Lunes, Enero 01, 2011 ???

Merci d'avance.


2 commentaires

01 janvier 2011 est un samedi. Vous ne pourrez probablement pas analyser correctement cette date.


mois en espagnol n'a pas de lettres majuscules.


3 Réponses :


8
votes

YYOU peut utiliser CultureInfo pour le faire, si vous définissez la culture actuelle dans le fil d'exécution, la date sera format dans la culture correcte http://msdn.microsoft.com/en-us/library/5hh873ya.aspx

dans vb.net xxx

ou c # xxx


1 commentaires

Pour ceux de Porto Rico, rappelez-vous que l'ES est d'Espagne. Bien que nous utilisions la date au format espagnol, nous utilisons la période (.) Pour les nombres décimaux (contrairement à l'Espagne et aux autres pays européens). Donc, dans ce cas, utilisez fil.CurrentThread.CurrentCulture = nouveau cultureinfo ("ES-PR"); Si vous allez définir la culture actuelle dans le fil d'exécution.



23
votes

Vous pouvez utiliser méthode DateTime.parseexact pour analyser l'entrée dans un valeur DateTime à l'aide d'un anglais CultureInfo . Ensuite, vous pouvez utiliser le méthode DateTime.tostring avec un espagnol cultureInfo pour convertir le DateTime Valeur à une chaîne.

var result = dt.ToString("D", new CultureInfo("es-ES"));
// result == "martes, 26 de julio de 2011"


2 commentaires

+1 Pour noter le "DDDD, MMMM DD, AAAA" Le format est non standard en espagnol.


@MechanicalSnail Oui est standard: [jour] de [mois sans capital] Del [année en numérotation à 4 chiffres]. La bonne voie est "del" mais "de" est également acceptée. (Je suis professeur d'université espagnol)



1
votes

Obtenez la dateTime.now et traduisez quand vous avez besoin. XXX


0 commentaires