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

Langage Java Discussion :

remplacer la virgule pas un point dans un float


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 112
    Par défaut remplacer la virgule pas un point dans un float
    Salut,

    j'ai besoin d'afficher dans une jsp, des float ayant deux chiffres après la virgule.
    plutôt le séparateur doit être un point et non pas une virgule;
    Exemple : 5.30

    je traite ceci dans une action. c'est là où je dois construire mon float.

    Merci

  2. #2
    Membre éclairé Avatar de Balbuzard
    Profil pro
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Par défaut
    Transforme ton float en String :
    Puis remplace la virgule par un point :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String t=".";
    StringTokenizer st = new StringTokenizer(s, ",", false);
    while (st.hasMoreElements())
    {
    	t += st.nextElement();
    }
    tu récupères un objet t de type String dont toutes les virgules sont remplacées par des points.

    Après, je sais pas trop ce que tu peux en faire, vu que du coup, tendu de le retransformer en String...

  3. #3
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 698
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 698
    Par défaut
    Je pense que la conversion en String suffit vu que le séparateur par défaut est bien le '.' il me semble.
    Si ce n'est pas le cas, je pense qu'un chaine.replace(',','.') serait plus simple qu'un StringTokenizer

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par Uther Voir le message
    Je pense que la conversion en String suffit vu que le séparateur par défaut est bien le '.' il me semble
    +1

    Tu dois utiliser un outils de formatage qui prend en compte la locale de ton application (français?). Si c'est bien le cas tu dois spécifier précisément la locale que tu souhaire (US devrait correspondre à ton besoin).

    Citation Envoyé par Uther Voir le message
    si ce n'est pas le cas, je pense qu'un chaine.replace(',','.') serait plus simple qu'un StringTokenizer
    +1 aussi

    Et un Float.toString(monFloat) est bien plus simple et performant qu'une concaténation avec ""...


    a++

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    112
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 112
    Par défaut
    merci pour vos réponse.
    j'ai trouvé une solution à l'aide de la bibliothèque NumberFormat.

    NumberFormat Myformat = NumberFormat.getInstance(Locale.FRENCH);

    Myformat.setMinimumFractionDigits(2); //Nb de Digit mini
    Myformat.setMaximumFractionDigits(2); //Nb de Digit Maxi


    String sCharge0 = Myformat.format(fCharge0);

    (en précisant 'Locale.FRENCH' j'obtient le . comme séparateur).

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par midotoon Voir le message
    (en précisant 'Locale.FRENCH' j'obtient le . comme séparateur).
    Là je ne comprend plus rien : avec Locale.FRENCH tu devrais avoir une virgule

    a++

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

Discussions similaires

  1. remplacer une virgule par un point
    Par parano dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 10/02/2012, 16h12
  2. Réponses: 5
    Dernier message: 23/07/2009, 19h49
  3. Remplacer la virgule par un point
    Par lollo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/11/2008, 18h08
  4. Remplacer les virgules par des points
    Par vatsyayana dans le forum Excel
    Réponses: 7
    Dernier message: 14/06/2008, 11h13
  5. [sql] remplacer une virgule par un point
    Par shiners300 dans le forum Oracle
    Réponses: 1
    Dernier message: 23/12/2005, 19h19

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