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

 Java Discussion :

prix dans JformattedtextField


Sujet :

Java

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Novembre 2007
    Messages : 81
    Points : 56
    Points
    56
    Par défaut prix dans JformattedtextField
    Bonjour,

    je suis en train de créer une application dans laquelle j'ai besoin de faire saisir un prix. J'utilise donc un jformattedTextField afin d'obliger les 2 chiffres apres la virgule et de n'avoir que des chiffres.
    je recupere le tout dans une variable prix, déclarée en float.

    j'ai donc ceci: prix = Float.parseFloat((""+ jftfPrix.getText()).replace(",", "."));

    lorsque l'utilisateur clique sur le bouton valider, s'il a entré une valeure type "555.55" j'ai l'erreur suivante, que je n'ai pas s'il tape: "555,55":

    Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "555,55"
    at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)



    Merci de m'apporter votre aide

  2. #2
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 562
    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 562
    Points : 15 493
    Points
    15 493
    Par défaut
    Tout d'abord je te déconseille les flottant pour une application manipulant les prix, il vaut mieux utiliser BigDecimal pour éviter toute mauvaise surprise comme ici :http://www.developpez.net/forums/d65...me-type-double

    Ensuite (""+ jftfPrix.getText()).replace(",", ".") est inutilement compliqué. jftfPrix.getText().replace(",", ".") suffit.

    Enfin j'ai du mal a comprendre pourquoi tu aurais une erreur avec les points.
    Ton code à l'air de fonctionner. Mais il serait peut-être plus propre de formater les chaines de caractères en Nombre décimaux (et vice-versa) avec la classe DecimalFormat: cf. Javadoc

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    crée ton JFormattedTextField comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JFormattedTextField textField = new JFormattedTextField(java.text.NumberFormat.getCurrencyInstance());
    Avec ça, pas besoin de s'amuser à remplacer la virgule par un point.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    Ah oui, ma solution risque de poser quelques soucis, puisqu'il faut absolument entrer le signe €...

    Donc, utilise plutôt un DecimalFormat comme conseillé par Uther.

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/12/2010, 21h09
  2. Recherche de prix dans un fichier texte
    Par idoclub dans le forum Pascal
    Réponses: 6
    Dernier message: 18/03/2009, 17h03
  3. Trigger pour inserer des prix dans une table
    Par dragongia_fr dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 06/03/2009, 23h37
  4. [RegEx] Récupérer un prix dans une chaîne de caractère
    Par Tazerty dans le forum Langage
    Réponses: 1
    Dernier message: 11/03/2008, 07h41
  5. Réponses: 7
    Dernier message: 02/03/2006, 14h58

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