Hello,
Je cherche le moyen pour formaté un Integer qui aurait cette valeur
1000000 en 1'000'000
Version imprimable
Hello,
Je cherche le moyen pour formaté un Integer qui aurait cette valeur
1000000 en 1'000'000
Salut,
Il suffit d'utiliser un NumberFormat ou un Formatter (java 5) avec la bonne locale :
:faq: Comment convertir un nombre en chaîne formatée ?
a++
Cela donne quelque chose du genre,
output : 1.000.000Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public static void main (String [] args) { DecimalFormat formatMio = new DecimalFormat("0,000,000" ); // c'est pas necessaire de mettre 3 blocs mais je me rappelle plus la syntaxe exacte DecimalFormatSymbols sMio = formatMio.getDecimalFormatSymbols(); sMio.setGroupingSeparator('.'); formatMio.setDecimalFormatSymbols(sMio); long number = 1000000; DecimalFormat formatCentMille = new DecimalFormat("000,000" ); // c'est pas necessaire de mettre 3 blocs mais je me rappelle plus la syntaxe exacte DecimalFormatSymbols sCentMille = formatCentMille.getDecimalFormatSymbols(); sCentMille.setGroupingSeparator('.'); formatCentMille.setDecimalFormatSymbols(sCentMille); DecimalFormat formatDixMille = new DecimalFormat("0,000" ); // c'est pas necessaire de mettre 3 blocs mais je me rappelle plus la syntaxe exacte DecimalFormatSymbols sDixMille = formatCentMille.getDecimalFormatSymbols(); sDixMille.setGroupingSeparator('.'); formatDixMille.setDecimalFormatSymbols(sDixMille); if (number >= 1000 && number <= 99999) { System.out.println(formatDixMille.format(number)); } if (number >= 10000 && number <= 999999) { System.out.println(formatCentMille.format(number)); } if (number >= 100000 && number <= 9999999) { System.out.println(formatMio.format(number)); }