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

Collection et Stream Java Discussion :

Float : Interpréter la virgule comme un point


Sujet :

Collection et Stream Java

  1. #1
    Membre actif
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Points : 235
    Points
    235
    Par défaut Float : Interpréter la virgule comme un point
    Bonjour,

    Savez-vous comment dire à Java d'interpréter, pour un floatant, les virgules comme des points au niveau des saisies utilisateurs ? Je sais que cela tient sur une petite ligne mais je ne men rappel plus

    Car sinon, Java interprète la virgule comme le séparateur des milliers.

    Merci.

  2. #2
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    à part parser ta chaine et remplacer la virgule par un point , je ne vois pas de moyen plus rapide

  3. #3
    Membre actif
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Points : 235
    Points
    235
    Par défaut
    Je sais qu'il en existe une puisque je l'ai déjà utilisée dans le passée mais je n'arrive pas à remettre la main dessus.

  4. #4
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maChaine.replace(',','.');

  5. #5
    Membre actif
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Points : 235
    Points
    235
    Par défaut
    oui, mais non. Il existe une commande plus propre car elle agit au niveau du float et non de la chaine saisie

  6. #6
    Membre expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Points : 3 080
    Points
    3 080
    Par défaut
    Je dirais avec la classe DecimalFormat, et les DecimalFormatSymbols (avec un getter/setter dans DecimalFormat).

  7. #7
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Citation Envoyé par nicolas.pied
    oui, mais non. Il existe une commande plus propre car elle agit au niveau du float et non de la chaine saisie
    la javadoc est

  8. #8
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    peut-être une variable d'environnement ?

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 36
    Points : 28
    Points
    28
    Par défaut
    Je pense comme ca a déjà été dit qu'avec les DecimalFormat tu pex t'en sortir.

    Sinon, il me semble aussi qu'en jouant avec les locales ca marche aussi :
    tu peux définir tes séparateurs décimaux et séparateurs de milliers (mais au final ca revient à passer par un NumberFormat quand tu fais un parse ou autre)

  10. #10
    Membre éprouvé
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Points : 1 085
    Points
    1 085
    Par défaut
    +1

    Utilise DecimaFormat

    Remplacer , par un point c'est de la rustine et c'est tout laid (tiens ce matin tout est laid... ). En effet c'est pas portable, le jour ou tu veux changer de Locale ton appli se casse la tête. A mon avis il ne faut pas s'appuyer sur un cas particulier de séparateur décimal pour interpréter des nombres.

    J'ai déjà vu ça en pl/sql et bien quand on se retrouve avec une numeric or value error en prod ça fait pas sérieux.

    A+

  11. #11
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Ben ca dépend de ta Locale. En francais, en anglais etc.
    Un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    NumberFormat nfi = NumberFormat.getInstance(new Locale("fr"));
    Number n1 = nfi.parse("12,25");
    ...
    NumberFormat nfi = NumberFormat.getInstance(new Locale("en"));
    Number n1 = nfi.parse("12.25");

  12. #12
    Membre régulier Avatar de java_fun
    Inscrit en
    Novembre 2004
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 117
    Points : 102
    Points
    102
    Par défaut
    Bonjour,

    le plus simple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
     public class TestCode {
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
     
    	 try {
    		 String chaine = "12,56";
    		 NumberFormat nf=NumberFormat.getInstance();  
    		 System.out.println(nf.parse(chaine).floatValue());
    	} catch (ParseException e) {
    		// TODO Auto-generated catch block
    		e.printStackTrace();
    	}
     
     
    	}
     
    }
    c affiche 12.56

Discussions similaires

  1. [Toutes versions] Reconnaissance du point et de la virgule comme caractère décimal
    Par Manon26 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/04/2013, 15h29
  2. Réponses: 1
    Dernier message: 02/11/2011, 01h12
  3. remplacer la virgule pas un point dans un float
    Par midotoon dans le forum Langage
    Réponses: 5
    Dernier message: 29/08/2008, 15h17
  4. Réponses: 3
    Dernier message: 11/11/2005, 11h59
  5. Float interprété différement avec FF et IE?
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 14/08/2005, 23h55

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