Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > ETL > Talend
Talend Forum d'entraide sur Talend (Talend Open Studio, ...). Avant de poster --> FAQ Talend, Tutoriels Talend
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/06/2008, 17h24   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 60
Points : 11
Points : 11
Par défaut conversion string float (tMap)

bonjour,

j'ai un souci de conversion d'un string en float en utilisant une tMap.
J'ai essayé ces deux syntaxes dans la colonne expression de ma sortie (row1.Nb_Litres étant un String):
-
Code :
Float.parseFloat(row1.Nb_Litres)
-
Code :
Float.valueOf(row1.Nb_Litres).floatValue()
et j'obtiens cette erreur:
Code :
1
2
3
4
5
6
7
Exception IN component tMap_1
java.lang.NumberFormatException: FOR input string: "356,99"
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1224)
	at java.lang.Float.parseFloat(Float.java:394)
	at consommation_extraction.extraction_0_1.extraction.tFileInputExcel_1Process(extraction.java:838)
	at consommation_extraction.extraction_0_1.extraction.runJobInTOS(extraction.java:1113)
	at consommation_extraction.extraction_0_1.extraction.main(extraction.java:1021)
je précise que je prends un fichier excel en entrée et une bd access en sortie
docky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2008, 18h23   #2
Membre Expert
 
Avatar de Benoit_Durand
 
Benoit Durand
Consultant en Business Intelligence Freelance
Inscription : mars 2005
Messages : 819
Détails du profil
Informations personnelles :
Nom : Benoit Durand
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Consultant en Business Intelligence Freelance

Informations forums :
Inscription : mars 2005
Messages : 819
Points : 1 093
Points : 1 093
Ca ne peut pas venir de ta virgule ?

Code :
new Float(row1.Nb_Litres.REPLACE(',','.'))
code non testé
Benoit_Durand est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/06/2008, 18h59   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 60
Points : 11
Points : 11
ah oui peut-être que c'est ça ! c'est un point et non pas une virgule en java il me semble ! j'essaierai demain...

merci
docky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2008, 10h10   #4
Candidat au titre de Membre du Club
 
Inscription : avril 2007
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 60
Points : 11
Points : 11
bon ça marche merci. Il faut juste écrire le "replace" en minuscules
docky est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h19.


 
 
 
 
Partenaires

Hébergement Web