Perl débutant: lire des caractères chinois sur l'invit
Fermé
Eno145
Messages postés
8
Date d'inscription
samedi 26 février 2022
Statut
Membre
Dernière intervention
3 mai 2022
-
1 mai 2022 à 12:32
[Dal] Messages postés 6203 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 29 janvier 2025 - 3 mai 2022 à 20:27
[Dal] Messages postés 6203 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 29 janvier 2025 - 3 mai 2022 à 20:27
A voir également:
- Perl débutant: lire des caractères chinois sur l'invit
- Logiciel de programmation pour débutant - Guide
- Denon perl pro test - Accueil - Audio
- Logiciel montage vidéo débutant - Guide
- Formation sap débutant pdf - Forum compta / gestion
- Salaire mangaka débutant ✓ - Forum Loisirs / Divertissements
1 réponse
[Dal]
Messages postés
6203
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
29 janvier 2025
1 097
1 mai 2022 à 17:11
1 mai 2022 à 17:11
Salut Eno145,
Le contenu de $chinese n'est-il pas déjà en utf8 ?
Quel est l'encodage de ton fichier Perl ?
Dal
Le contenu de $chinese n'est-il pas déjà en utf8 ?
Quel est l'encodage de ton fichier Perl ?
Dal
1 mai 2022 à 20:15
J'ai configuré sur Atom mon fichier Perl en utf8 (comme d'habitude). En toute logique, je pensais que le caractère pourrait être lu, vu que je le tape directement avec le clavier chinois de windows. Mais, avec le code basique:
use strict;
use warnings;
use utf8;
my $chinese = "你好";
print "$chinese\n";
la réponse sur l'invit me donne:
C:\Perl ex>perl chinese2.pl
Wide character in print at chinese2.pl line 8.
õ¢áÕÑ¢
Même en configurant directement le script en chinois simplifié, cela me donne des expressions illisibles.
1 mai 2022 à 22:27
Pour afficher le contenu sur la console Windows, essaye ceci :
Si tu n'as pas le module Encode::HanExtra, installe le.
Modifié le 2 mai 2022 à 19:50
Ton terminal CDM est-il paramétré avec un code-page compatible avec cet affichage ?
https://docs.microsoft.com/en-us/windows/win32/intl/code-page-identifiers
https://docs.microsoft.com/fr-fr/windows-server/administration/windows-commands/chcp
essaye de lancer :
dans la console avant de lancer ton script (qui correspond à GB18030)
Tu peux essayer d'autres combinaisons de code page et d'encodage. Il y en a plusieurs pour le chinois. Il faut que les deux soient compatibles (ce que la console est prévue pour afficher et l'encodage des caractères que Perl envoie à la console que tu peux forcer avec encode).
Tu pourrais aussi utiliser la code-page 65001 pour utf-8 et juste tenter d'afficher directement ta variable déjà encodée en utf-8 que tu n'aurais pas à passer par encode à ce moment là.
3 mai 2022 à 10:53
936 gb2312 ANSI/OEM Simplified Chinese (PRC, Singapore); Chinese Simplified (GB2312).
Bonne journée.
3 mai 2022 à 20:27