Votre question

Probleme dans la programmation en java

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
27 Mai 2010 09:36:20

Bonjour,
j'ai un programme dans leqelle je traite un fichier texte, la forme des lignes est la suivante:
0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,9,9,1.00,0.00,0.11,0.00,0.00,0.00,0.00,0.00,normal.
et dans mon programme je dois remplacer les attributs symboliques comme tcp par un nombre et ce que je fais mais toujours j'ai un erreur sur cette instruction :
param[j] = new Double(p).doubleValue();
remarque le type de param et double et p est un string
je ne sais pas comment regler cette erreur please aider moi.
merci,

Autres pages sur : probleme programmation java

27 Mai 2010 09:38:22

quelle est l'erreur que tu as ?
m
0
l
27 Mai 2010 11:37:58

Bonjour,

Premièrement, pour convertir un String en double la technique est la suivante :

  1. Double.parseDouble(p);


Par contre, j'ai bien peur que tu n'obtiennes toujours des erreurs avec cette méthode lorsqu'il traitera les chaines de caractères ("tcp", "http", "SF").

Je ne vois pas du tout par quelle nombre tu veux remplacer "tcp" etc...

Si c'est des constantes il te faudra un "switch/case" :

  1. switch( p.hashCode() )
  2. {
  3. case "tcp".hashCode() : param[j] = codeTCP; break;
  4. case "http".hashCode() : param[j] = codeHTTP; break;
  5. default : try {
  6. param[j] = Double.parseDouble(p);
  7. } catch (NumberFormatException exc) {
  8. exc.printStackTrace();
  9. System.exit(2);
  10. }
  11. }


See you ,
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS