La classe MessageFormatterMessageFormatter
&reftitle.intro;
MessageFormatter est une classe concrète qui permet
de produire des messages concaténés, et indépendants de la langue. La méthode
fournit dans cette classe sont utilisées pour construire des messages qui
sont destinés aux utilisateurs finaux.
La classe MessageFormatter assemble les messages à partir
de différents fragments (textes, nombres et dates), fournis par le programme.
Grace à la classe MessageFormatter, le programme
n'a pas besoin de connaître l'ordre des fragments. La classe utilise des
spécifications de formatage pour assembler les fragments en un seul message.
Par exemple, MessageFormatter vous permet d'afficher
la phrase "Fini d'imprimer x fichier sur y..." d'une
manière qui reste souple pour la traduction.
Avant, un message était créé sous forme de phrase, et géré comme une chaîne.
Cette procédure créait des problèmes pour les traductions, car la structure
de la phrase, l'ordre des mots, le format des nombres, etc. était très différents
d'une langue à l'autre. L'approche de création des messages,
indépendante de la langue, permet de séparer le message et les variables.
Avec ces variables, MessageFormatter peut concaténer
les différentes parties du message, les formater aux conventions correctes,
et fournir un message bien formé.
MessageFormatter prend une série d'objets, formate
les textes, et les insert dans les chaînes formatées dans les emplacements
corrects. Un grand choix de formats peut être utilisé en conjonction avec
MessageFormatter pour gérer le pluriel, les nombres,
etc. Typiquement, le message est fourni par une ressource, et les arguments
sont préparés dynamiquement.
&reftitle.classsynopsis;
MessageFormatterMessageFormatter&Methods;
&reftitle.seealso;
ICU formatting documentation
ICU message formatting description
ICU message formatters
ICU choice formatters
&reference.intl.entities.messageformatter;