convert decimal (comma to dot) postgres

One Star

convert decimal (comma to dot) postgres

Hi guys
It's me ... again !!! Smiley Very Happy
Here is an example of my file
_________________________
15;2013;25/02/1998;3;999;1;1003,49
15;2105;25/02/1998;3;999;1;1003,49
...
Well I want to convert decimal text column to floating point Postgres Column.
when i try to do that i've got an cute error message Smiley Sad
_________________________________________________________________
tarting job job_2 at 18:17 04/07/2007.
connecting to socket on port 3334
connected
Exception in component tFileInputDelimited_1
java.lang.NumberFormatException: For input string: "1003,49"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Float.parseFloat(Unknown Source)
at routines.system.ParserUtils.parseTo_float(ParserUtils.java:50)
at projet_1.job_2.job_2.tFileInputDelimited_1Process(job_2.java:296)
at projet_1.job_2.job_2.main(job_2.java:536)
disconnected
Job job_2 ended at 18:18 04/07/2007.
My question ...
Is there an numeric pattern or an other trick to convert my column ?
like that 1003,49 to 1003.49
THX
Regards ...
Didier
_____________________
Under Windows XP
TOS:v2.1.0.M1_r3483
Oracle 10g
Postgres 8.2.3
jre 1.6

_________________________________________________________________
Employee

Re: convert decimal (comma to dot) postgres

Hello
Problem is that , is not the decimal separator in Java.
You have to read your fields as a String.
Then you can parse it and convert it as a Float in a tMap : new Float(row.fieldName.replace(',', '.'))
Regards,
One Star

Re: convert decimal (comma to dot) postgres

hi Smiley Wink
oki I try and i keep you informed
i saw the hour of your answer ... lol go to sleep !!! Smiley Very Happy
thx a lot
Regards
One Star

Re: convert decimal (comma to dot) postgres

Hi ...
it work !
Thaaaaaaaanks Smiley Very Happy
Have fun Smiley Wink
Regards !
One Star

Re: convert decimal (comma to dot) postgres

Hello Didier,
I'm facing the same trouble as you did : wanna change decimal separator ',' by '.' from string to float.
I've tried to use a tMap Component with this piece of code :new
Float(row.fieldName.replace(',', '.'))
It fails... Where should I write this expression ?
I'm new to Talend so it would be very kind to help me.
Community Manager

Re: convert decimal (comma to dot) postgres

Hi matthieu
See 1846.
Best regards
shong
----------------------------------------------------------
Talend | Data Agility for Modern Business
One Star

Re: convert decimal (comma to dot) postgres

Hello
Problem is that , is not the decimal separator in Java.
You have to read your fields as a String.
Then you can parse it and convert it as a Float in a tMap : new Float(row.fieldName.replace(',', '.'))
Regards,

This my problem Thank you very muchhhh... Smiley Happy))
Six Stars

Re: convert decimal (comma to dot) postgres

in tfileinputdelimited you can set in advanced option custom decimal separaton, so custom coding not needed
bye
One Star

Re: convert decimal (comma to dot) postgres

Hi guys
It's me ... again !!! Smiley Very Happy
Here is an example of my file
_________________________
15;2013;25/02/1998;3;999;1;1003,49
15;2105;25/02/1998;3;999;1;1003,49
...
Well I want to convert decimal text column to floating point Postgres Column.
when i try to do that i've got an cute error message Smiley Sad
_________________________________________________________________
tarting job job_2 at 18:17 04/07/2007.
connecting to socket on port 3334
connected
Exception in component tFileInputDelimited_1
java.lang.NumberFormatException: For input string: "1003,49"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Float.parseFloat(Unknown Source)
at routines.system.ParserUtils.parseTo_float(ParserUtils.java:50)
at projet_1.job_2.job_2.tFileInputDelimited_1Process(job_2.java:296)
at projet_1.job_2.job_2.main(job_2.java:536)
disconnected
Job job_2 ended at 18:18 04/07/2007.
My question ...
Is there an numeric pattern or an other trick to convert my column ?
like that 1003,49 to 1003.49
THX
Regards ...
Didier
_____________________
Under Windows XP
TOS:v2.1.0.M1_r3483
Oracle 10g
Postgres 8.2.3
jre 1.6

_________________________________________________________________

Problem is that , is not the decimal separator in Java.
You have to read your fields as a String.
-----------------------------------------------------------------------
tuyen dung | viec lam | tim viec
One Star

Re: convert decimal (comma to dot) postgres

Hi guys
It's me ... again !!! Smiley Very Happy
Here is an example of my file
_________________________
15;2013;25/02/1998;3;999;1;1003,49
15;2105;25/02/1998;3;999;1;1003,49
...
Well I want to convert decimal text column to floating point Postgres Column.
when i try to do that i've got an cute error message Smiley Sad
_________________________________________________________________
tarting job job_2 at 18:17 04/07/2007.
connecting to socket on port 3334
connected
Exception in component tFileInputDelimited_1
java.lang.NumberFormatException: For input string: "1003,49"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Float.parseFloat(Unknown Source)
at routines.system.ParserUtils.parseTo_float(ParserUtils.java:50)
at projet_1.job_2.job_2.tFileInputDelimited_1Process(job_2.java:296)
at projet_1.job_2.job_2.main(job_2.java:536)
disconnected
Job job_2 ended at 18:18 04/07/2007.
My question ...
Is there an numeric pattern or an other trick to convert my column ?
like that 1003,49 to 1003.49
THX
Regards ...
Didier
_____________________
Under Windows XP
TOS:v2.1.0.M1_r3483
Oracle 10g
Postgres 8.2.3
jre 1.6

_________________________________________________________________

Problem is that , is not the decimal separator in Java.
You have to read your fields as a String.
-----------------------------------------------------------------------
tuyen dung | viec lam | tim viec
One Star

Re: convert decimal (comma to dot) postgres

Hi,
I have a similar problem.
Input string: "139,95 ?"
Expected output: "13995" Typ int.
I've solved this problem by using the treplce component (see image), but i think it is possible to do all the stuff in tmap component? am i right?