char-from-code
Retourne la représentation de caractère de la valeur décimale Unicode (code) fournie en tant qu’argument. Astuce : Pour trouver le code décimal Unicode d’un caractère, vous pouvez utiliser la fonction code-from-char.
Langages
Built-in, C++, C#, Java, XQuery, XSLT 2.0, XSLT 3.0.
Paramètres
Nom | Description |
---|---|
code | La valeur Unicode, en tant que nombre décimal. |
Exemple 1
Conformément aux graphiques disponibles sur le site web Unicode (https://www.unicode.org/charts/), le point d’exclamation a la valeur hexadécimale de 0021. La valeur correspondante en format décimal est 33. C’est pourquoi, si vous fournissez 33 en tant qu’argument à la fonction char-from-code, le caractère ! Sera retourné.
Exemple 2 (éditions Professional et Enterprise)
Cet exemple affiche comment remplacer les caractères spéciaux dans une base de données avec des espaces. Considérez une base de données SQLite consistant en une table "Lignes" qui a deux colonnes : "ID" et "Description".
L'objectif est d'extraire chaque description d'un fichier CSV (une description par ligne) ; ainsi un mappage pour atteindre cet objectif pourrait ressembler à l'exemple suivant :
Néanmoins, étant donné que chaque ligne "Description" dans Access contient plusieurs lignes séparées par des caractères CR/LF, la sortie de mappage contient aussi des sauts de ligne, ce qui n'est pas le résultat intenté :
Afin de surmonter ce problème, nous allons ajouter au mappage les fonctions char-from-code et replace depuis la bibliothèque intégrée de MapForce. Chaque description doit être traitée de manière à ce que, quels que soient les caractères rencontrés ci-dessus, ils doivent être remplacés par un caractère d'espace.
Dans le graphique Unicode (http://www.unicode.org/charts/), les caractères LF et CR correspondent aux caractères hex 0A | dec 10 et hex 0D | dec 13, respectivement. C'est pourquoi le mappage doit être modifié pour convertir les valeurs Unicode décimales 13 et 10 en un string, afin de permettre un autre traitement par la fonction replace.
Si vous faites un aperçu du mappage maintenant, vous verrez que les caractères CR/LF se trouvant dans le champ de base de données ont chacun été remplacés par un espace.