GNT sans publicité, site mobile, fonctionnalitées exclusives...

Utilitaire de transcription ISO-8859 --> entités Unicode

Le
Sergio
Y'a quelqu'un qui a ça ? J'ai du texte écrit en ISO-8859-1 (en fait
tapé sous Windows bêtement) et il le faut absolument en ASCII pur avec
les caractères accentués en entités Unicode (cad é -> é ).

Je suis sous Windows, éventuellement un source en C, je sais le
compiler

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Lire les 4 réponses

Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Laurent Wacrenier
Le #22002601
Sergio
Y'a quelqu'un qui a ça ? J'ai du texte écrit en ISO-8859-1 (en fait
tapé sous Windows bêtement) et il le faut absolument en ASCII pur avec
les caractères accentués en entités Unicode (cad é -> é ).

Je suis sous Windows, éventuellement un source en C, je sais le
compiler...



Pas testé (tapé au vol), prend les données dans l'entrée standart et
les converti sur la sortie standart :

#include #include void main(void) {
int c;
while((c = fgetc(stdin))!=EOF) {
if (isprint(c) || isspace(c)) {
fputc(c, stdout);
} else {
fprintf(stdout, "&#x00%02X;", c);
}
}
}

Pour autre chose que du ISO-8859-1, utiliser iconv() au milieu.
Pierre Goiffon
Le #22002591
[Copie et suivi sur fr.comp.normes.unicode, qui me semble plus indiqué]

Sergio wrote:
Y'a quelqu'un qui a ça ? J'ai du texte écrit en ISO-8859-1 (en fait tapé
sous Windows bêtement) et il le faut absolument en ASCII pur avec les
caractères accentués en entités Unicode (cad é -> é ).

Je suis sous Windows, éventuellement un source en C, je sais le compiler...



Voir la liste des caractères en ISO Latin-1, et comparer les no de
caractères avec les code points Unicode :
http://www.unicode.org/Public/MAPPI...8859-1.TXT

La solution vient vite :)
Une petite moulinette en WSH devrait faire l'affaire.
Sergio
Le #22002531
Laurent Wacrenier a écrit :

Y'a quelqu'un qui a ça ? J'ai du texte écrit en ISO-8859-1 (en fait
tapé sous Windows bêtement) et il le faut absolument en ASCII pur avec
les caractères accentués en entités Unicode (cad é -> é ).



Pas testé (tapé au vol), prend les données dans l'entrée standart et
les converti sur la sortie standart :

#include #include void main(void) {
int c;
while((c = fgetc(stdin))!=EOF) {
if (isprint(c) || isspace(c)) {
fputc(c, stdout);
} else {
fprintf(stdout, "&#x00%02X;", c);
}
}
}



! Que n'y ai-je pensé plus tôt !!!

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
loufoque
Le #22002431
Sergio a dit le 18/02/2005 à 15:30:

Y'a quelqu'un qui a ça ? J'ai du texte écrit en ISO-8859-1 (en fait tapé
sous Windows bêtement) et il le faut absolument en ASCII pur avec les
caractères accentués en entités Unicode (cad é -> é ).




Voici une solution en PHP [1].
Commence par convertir en UTF-8 (utf8_encode)
Ensuite convertis en Unicode avec utf8_to_unicode
Puis utilise unicode_to_entities_preserving_ascii

[1]
http://www.randomchaos.com/source.php?source=http://www.randomchaos.com%2Flanguage%2Fjapanese-unicode.php
Publicité
Suivre les réponses
Poster une réponse
Anonyme