-
de l'utf8 à l'iso-8859-1
Bonjour,
J'utilise html::tagparser pour obtenir des mots arabes codé en utf8 (je test avec IsUTF8 pour vérifier que c'est bien de l'utf8).
Je veux les convertir en ISO-8859-1 (caractères arabes codés par &#NNNN; ou NNNN sont des décimal, c'est bien ça?).
J'ai essayé:
encode('utf8', $string, Encode::FB_HTMLCREF); ça donne de caractères différents de &#NNNN (j'utilise un print simple de perl pour afficher);
encode('ascii', $string, Encode::FB_HTMLCREF); ça donne des caractères &#NNN qui ne sont des caracteres arabes!
SVP de l'aide.
-
T'as rien trouvé dans la documentation du module Encode?
-
Ça devrait marcher. Quelle est ta platforme ?
Chez moi (Linux), le code suivant fonctionne (je n'utilise pas les balises code pour que le texte arabe apparaisse en clair):
use utf8;
use Encode;
my $arabic = 'سلام';
print encode('iso-8859-1', $arabic, Encode::FB_HTMLCREF), "\n";
J'obtiens bien le réultat escompé (verification dans un browser) :