IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

globalisation et cultureinfo


Sujet :

ASP.NET

  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut globalisation et cultureinfo
    Bonjour,

    Pourquoi lorsque j'utilise : CultureInfo("en-us") ma valeur decimal disparait elle ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    >? Decimal.Parse(Account.Longitude.ToString(), new System.Globalization.CultureInfo("en-us"))
    4784299919236519
    >? Decimal.Parse(Account.Longitude.ToString(), new System.Globalization.CultureInfo("fr-fr"))
    4.784299919236519
    Merci

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    T'as cherché un peu avant de poser ta question?
    T'as fait du pas à pas?
    T'as regardé ce que vautAccount.Longitude.ToString()?

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par topolino Voir le message
    Pourquoi lorsque j'utilise : CultureInfo("en-us") ma valeur decimal disparait elle ?
    [MODE=troll]
    Par ce que les américains n'ont pas encore découvert les nombres décimaux
    [/MODE]

    Ok, elle était facile...

    Plus sérieusement... à mon avis le problème est le suivant :
    - Account.Longitude.ToString renvoie la valeur formatée avec la culture courante (donc avec une virgule comme séparateur décimal, en français) : 4,784299919236519
    - Decimal.Parse, utilisé avec la culture en-us, va considérer la virgule comme un séparateur de milliers, et non un séparateur décimal, et va donc l'ignorer

    Mais au fait, je vois pas l'utilité de faire un Parse sur le résultat de ToString ?? Tu cherches à faire quoi exactement ?

  4. #4
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Je veux mettre dans un label le resultat du Account.Longitude qui typé en decimal et je le veux avec un ".".

    pour un Label.Text = Account.Longitude.ToString() --> cela me donne un resultat avec ",", c'est pour cela que je fait un Decimal.Parse avec globalisation pour obtenir un "."

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Label.Text = Account.Longitude.ToString(CultureInfo.InvariantCulture.NumberFormat);

  6. #6
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Merci ca fonctionne bien.

    Mais le contraire ne fonctionne pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Account.Longitude = Label.Text; // ne marche pas
    Account.Longitude = Convert.ToDecimal(Label.Text); // ne marche pas
    Il attends une "," au lieu du "." ?!?

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par topolino Voir le message
    Merci ca fonctionne bien.

    Mais le contraire ne fonctionne pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Account.Longitude = Label.Text; // ne marche pas
    Account.Longitude = Convert.ToDecimal(Label.Text); // ne marche pas
    Il attends une "," au lieu du "." ?!?
    même principe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Account.Longitude = Convert.ToDecimal(Label.Text, CultureInfo.InvariantCulture.NumberFormat);

  8. #8
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Grrr ou vais je la tete.

    Merci

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 30
    Par défaut
    et un blabla.replace (',' , '.') ?

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par mcolo Voir le message
    et un blabla.replace (',' , '.') ?
    Pas très propre... en plus ça ne marchera que pour le français. La méthode que j'ai donnée fonctionnera quelle que soit la langue du système

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. c# débutant - utilisation de DateTimePicker en globalisation
    Par cg_pc12 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 04/08/2006, 08h07
  2. Réponses: 10
    Dernier message: 04/05/2006, 23h55
  3. [MFC] Globaliser une variable locale
    Par Philippe320 dans le forum MFC
    Réponses: 3
    Dernier message: 01/12/2005, 20h12
  4. Globalisation d'un Select
    Par mindwind dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/12/2005, 13h16
  5. Ms SQL et globalisation de site web
    Par ghismo dans le forum Langage SQL
    Réponses: 5
    Dernier message: 29/06/2004, 12h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo