Formatage de float en Java
Bonjour,
mon besoin est simple:
je récupère un float dans un fichier XML que je veux formatter dans un fichier texte, avec un pattern particulier (8 chiffres après la virgule, 2 avant)
Voici mon code :
Code:
1 2 3 4
| String patternNNDotNNNNNNNN = "%11.8f";
float value = 1.70473711f;
String result = String.format(java.util.Locale.US, patternNNDotNNNNNNNN, value);
System.out.println(result); |
en résultat, j'obtiens :
pareil si j'utilise ce code :
Code:
1 2 3
| java.text.DecimalFormatSymbols symbols = new java.text.DecimalFormatSymbols(java.util.Locale.US);
java.text.DecimalFormat df = new java.text.DecimalFormat("##.########", symbols);
System.out.println(df.format(value)); |
je ne comprends pas pourquoi j'ai cet arrondi qui est fait (le 11 se transforme en 07)...
merci pour votre aide