Nous avons tous était confronté à un problème de formatage de nombre par exemple un champ texte affichant une variable de type float :
123,456579967 Km ou toutes autres unités.
Il existe une facon très simple de formater ce texte avec une propriété que vous utilisez souvent : ToString().
En effet il est possible de passer des paramètres entre les parenthèses :
void Start () { float nb=123.4567898f; Debug.Log(nb.ToString("0000")); }
Ce code Affichera dans la console 1234 car le paramétre de ToString(« 0000 ») soit les quatres zeros répresentant les quatres premier chiffres a afficher.
float nb=123.4567898f; Debug.Log(nb.ToString("0.00"));
Ce code affichera dans la console 123.46 le paramétre 0.00 affiche les le nombre avec 2 chiffres derrière la virgule.
void Start () { float nb=123.4567898f; Debug.Log(nb.ToString("00 00.00 00")); }
Ce code affichera dans la console 01 23.45 68 le paramètre 00 00.00 00 000 va afficher des blocs de deux chiffres et arrondir le dernier.
void Start() { float nb = 0.90f; Debug.Log(nb.ToString("#.##")); }
Ce code affichera .9 car a l’inverse des 0 dans les paramètres, la # va afficher simplement le’ chiffre si il n’est pas null.
Attention ici le premier 0 ne s’affiche pas mais ici :
void Start() { float nb = 10.90f; Debug.Log(nb.ToString("##.##")); }
Le code affichera 10.9 dans la console.
Evidemment on peut combiner les deux :
void Start() { float nb = 1012.9516784354356f; Debug.Log(nb.ToString("## 000.##")); }
Ce code affichera 1 012.95 dans la console. Les deux premier ## vont afficher un bloc de deux chiffres si le premier n’est pas nul ensuite 000 un bloc de 3 chiffres et .## un bloc de 2 chiffres si le dernier ou ces deux chiffres ne sont pas égal a 0.
Voilà vous pouvez maintenant manipuler vos résultats pour l’affichage grâce a la propriété ToString() .
Il existe en C# d’autre propriété permettant de formater des nombres, des heures ou des dates, mais celle ci suffit souvent lorsque l’on débute et que l’on cherche une méthode rapide.
UPLN