1 votes

Comment ouvrir/importer un fichier CSV avec des caractères Unicode encodés comme références de caractères numériques ?

Dans Excel, j'ai essayé d'importer (en utilisant Données > Importer) un fichier CSV contenant des caractères chinois. Les caractères sont représentés sous forme Unicode références de caractères numériques (NCR) ; par exemple 香辣猪. Bien que j'aie réglé l'"Origine du fichier" sur "65001 : Unicode (UTF-8)", il semble que cela ne fasse rien.

Veuillez noter que :

香辣猪 est censé s'afficher sous forme de

Voici une capture d'écran de l'écran d'importation. Vous pouvez voir que la colonne "Titre du produit" contient des caractères chinois en Unicode, mais que ces caractères ne s'affichent pas correctement. J'ai également essayé presque tous les autres Unicode, et les "Origine du fichier" liés au chinois, mais tous sans succès.

enter image description here

Veuillez m'aider, comment puis-je importer le fichier CSV avec des caractères chinois en Unicode, avec succès dans Excel ?

1voto

Mobus Points 1871

Votre fichier est probablement encodé avec des codes de caractères standard ANSI/ASCII. Au lieu de coder les caractères UNICODE au niveau des octets dans le fichier CSV, il représente en fait le code de caractères unicode unique comme une série de caractères alphanumériques (c'est-à-dire une chaîne de chiffres L'épellation le numéro du caractère unicode). Il s'agit d'un référence à un caractère numérique (NCR) et est couramment utilisé dans les langages de balisage tels que le HTML pour assurer la rétrocompatibilité avec les navigateurs ou les systèmes ne prenant pas en charge l'unicode. L'identifiant "&#" signale le début d'un NCR.

Pour autant que je sache, il n'y a pas de support natif dans Excel pour convertir les chaînes contenant des NCR en unicode, mais vous pouvez convertir les numéros individuels en unicode en utilisant la fonction UNICHAR, par exemple :

=UNICHAR(39321)&UNICHAR(36771)&UNICHAR(29482)

Comment convertir une chaîne de référence numérique en UNICODE dans Excel ?

Si vous avez Excel 365 (vous avez besoin de SEQUENCE et TEXTJOIN), vous pouvez convertir une chaîne NCR comme suit 香辣猪 en A1 à une chaîne unicode en utilisant en A2 :

=TEXTJOIN("",,UNICHAR(MID(A1,SEQUENCE(INT(LEN(A1)/8),,3,8),5)))

En supposant que chaque code comporte exactement 8 caractères ("&#" + 5 numérique + " ;").

Pour les anciennes versions d'Excel, vous pouvez le pirater en utilisant

=SUBSTITUTE(SUBSTITUTE(REPLACE(A1,1,1,"="),"#","UNICHAR("), ";",")")

qui génère la formule requise sous forme de chaîne de texte. Copiez le résultat et collez-le uniquement "en tant que valeur". Modifiez la cellule et appuyez sur la touche Entrée pour évaluer la formule de la cellule et générer le texte UNICODE final.

0voto

Mobus Points 1871

Cette réponse est fournie pour des raisons "historiques" et sert uniquement à éduquer d'autres personnes qui pourraient avoir des difficultés à importer des fichiers csv avec différents jeux de caractères dans Excel. Voici quelques solutions à essayer

  • Essayez de l'ouvrir dans notepad ou un autre éditeur de texte plus avancé. Même si les caractères ne s'affichent pas correctement, "enregistrez sous" le fichier et modifiez l'encodage des caractères (par exemple, utf8, utf16, etc.), puis voyez ce qu'Excel en fait.

  • Essayez d'abord d'ouvrir le fichier dans Google Sheets ou Libre Calc, puis enregistrez-le et exportez-le au format de fichier Excel .xlsx à partir de là.

  • Excel utilise la langue et les paramètres régionaux de votre ordinateur local pour déterminer comment importer un csv. Sous Windows, recherchez les paramètres régionaux et linguistiques dans la section panneau de contrôle (pas le nouveau "Paramètres"). Réglez votre langue sur la même langue que celle du fichier. Vérifiez également les paramètres avancés tels que le délimiteur, le séparateur décimal, le format de date, etc. - ceux-ci doivent correspondre au formatage de notre fichier csv. ( NB : C'est probablement une bonne idée de mémoriser les raccourcis clavier permettant de faire revenir votre système à votre première langue. Ou mieux encore, activez la barre des langues et ajoutez la langue du fichier CSV comme deuxième langue afin de pouvoir passer facilement d'une langue à l'autre en utilisant les touches shift+alt ou Windows+espace.)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X