| FAQ |
| Kalender |
|
|
#1 | ||
|
|||
|
Nykomling
|
Jag skulle behöva hjälp med utskriften av flyttal i java.
Om talet är mellan 1 och 0 vill jag inte att den inledande 0:an ska skrivas ut om, t ex. 0.12 => .12 Har gjort några försök med printf men utan större framgång, Går det att formatera detta med printf eller måste man göra det på ett krångligare sätt? /Mathias |
||
|
|
Svara med citat
|
|
|
#2 | ||
|
|||
|
Mycket flitig postare
|
Just java har jag ingen koll på, men formatsträngar brukar ju fungera på ungefär samma sätt oavsett språk och i så fall så är nog tyvärr lösningen att konvertera till ett heltal.
Givet C-syntax borde din format sträng se ut så här idag: Kod:
printf("%0.6f", value);
Kod:
printf(".%d", value*1000000);
Kod:
printf("%s.%d",value==1?"1":"",value==1?0:value*1000000);
|
||
|
|
Svara med citat
|
|
|
#3 | |||
|
||||
|
Mycket flitig postare
|
det går ju också att köra hela printgrejen genom en replacefunktion som ersätter 0. med ....
typ printf(replace(minText, "0.", ".")); (pseudokod).... inte speciellt snyggt, men det är bättre än inget ifall allt annat sviker.
|
|||
|
|
Svara med citat
|
| Svara |
|
|