|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : avril 2003 Messages : 123 ![]() |
Avez-vous déjà utilisé decimal-format ?
J'essaie d'afficher des nombres à la française (au delà de 100 000, avec ou sans décimales), mais j'ai du me résoudre à la notation à l'américaine ( séparateur de groupe = virgule, au lieu de point ; séparateur décimal = point au lieu de virgule). A ce jour, j'utilise ceci : Code :
format-number(number(translate($Nb,',','.')), '###,##0.00') Si l'un de vous peut m'orienter ! Merci
__________________
Température de l'eau : 28 ° Température extérieure : 32° Température au fond du verre : 50° ~ 55° ------ Mangez des bananes ---------- |
|
|
00
|
|
|
#2 | ||||
|
Membre éclairé
![]() |
xsl:decimal-format determine comment les caracteres de la chaine format de format-number sont interprétés.
par exemple, XML: Code :
Code :
__________________
Nicolas |
||||
|
|
00
|
|
|
#3 | ||||
|
Membre à l'essai
![]() Inscription : avril 2003 Messages : 123 ![]() |
Dès que je pose :
Code :
<xsl:decimal-format decimal-separator="," grouping-separator=" "/>
The '0' format symbol may not follow the '#' format symbol in this section of a format pattern. ###,##-->0<-- J'ai cette erreur quelque soit la manière d'utilisation de decimal-format : Avec un entier : Code :
Code :
__________________
Température de l'eau : 28 ° Température extérieure : 32° Température au fond du verre : 50° ~ 55° ------ Mangez des bananes ---------- |
||||
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() |
Le format est tres précis : c'est un ensemble de chars prédéfini qui ont chacun une signification pour le formatage. On ne peut pas mettre n'importe quel char dans cette chaine.
Donc, en gros, tu as des chars qui ont une certaine interpretation, et tu as le <xsl:decimal-format> qui permet de modifier cette interpretation pour ces chars. Voilà la liste des chars utilisables, tiré de google: #: Denotes a digit. 0: Denotes leading and following zeros. .: The position of the decimal point ,: The group separator for thousands. %: Displays the number as a percentage. ;: Pattern separator. The first pattern will be used for positive numbers and the second for negative numbers D'apres ce que je comprend, on ne peut pas cumuler des 0 et des # dans la partie entiere ou dans la partie decimale. Par exemple, 000,###,###.00 est interdit, alors que 000,000,000.00 ou ###,###,###.00 est permis. Donc, si tu veux des nombres avec un espace en separateur de milliers et une virgule pour separer les decimales et avec au moins 2 zeros pour les decimales, il te faut utiliser le format suivant : ###,###.00 et il faut que tu specifies en plus comment le XSL interprete les , et les . via un decimal-format, comme indiqué dans les posts ci-dessus.
__________________
Nicolas |
|
|
00
|
|
|
#5 | ||||
|
Membre à l'essai
![]() Inscription : avril 2003 Messages : 123 ![]() |
Voici la solution :
1 / Déclarer Decimal-Format tel que : Code :
<xsl:decimal-format name="FormatNB" decimal-separator="," grouping-separator=" " NaN="NC"/>
Pour un entier : Code :
Code :
__________________
Température de l'eau : 28 ° Température extérieure : 32° Température au fond du verre : 50° ~ 55° ------ Mangez des bananes ---------- |
||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com