|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() |
Salut à tous.
Voilà : mon code est censé produire un fichier texte destiné à être compilé par un compilateur LaTeX. L'utilisateur doit pouvoir choisir entre l'encodage UTF8 et l'encodage ISO-8859-16. Si je sais parfaitement comment créer un fichier texte, j'ignore comment spécifier l'encodage à l'enregistrement. Dans l'idéal, j'utiliserais un TStringList avec la méthode SaveToFile... Peut-on en modifier l'encodage? Merci de vos conseils avisés. Dernière modification par Alcatîz ; 27/02/2010 à 22h46. Motif: préfixe |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() |
Je viens s'essayer un
où F est un textfile. Mais ça ne fonctionne pas. Ca me sort une chaine étrange qui ne se lit ni en UTF-8, ni en ISO-8859-16. Y'a vraiment pas moyen de préciser l'encodage que l'on veut ? |
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() Inscription : août 2006 Messages : 3 120 ![]() |
Voa,
Que contenait ta chaine, et quel est le résultat obtenu ?
__________________
La grandeur de l'homme se mesure à la taille de ses cimetières militaires. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() |
Pour essayer, la chaine de départ contenait : é è à
J'ai fait un writeln(F,AnsitoUTF8('é è à')) puis la même chose mais sans le AnsitoUTF8. J'obtiens les résultats suivants : Lecture en UTF8 : Ă© Ăš Ă é è à Lecture en ISO-8859-16 Ä© ÄĆĄ Ä Ă© Ăš Ă J'en ai déduit que l'écriture se faisait par défaut en UTF8 mais je ne comprends pas pourquoi la conversion d'une chaine en UTF8 ne donne pas le bon résultat. Et, d'autre part, pour la seconde partie de mon projet, comment écrire en ISO-8859-16 ??? |
|
|
00
|
|
|
#5 | ||
|
Membre du Club
![]() Inscription : janvier 2009 Messages : 48 ![]() |
Traduction automatique ;-)
Avec UTF-8, vous pouvez utiliser tous les caractères possibles. C'est le défaut sous Lazaurs. Alors, pourquoi avez-vous besoin de ISO-8859-16? Cela dit, au moins sous Linux, ça devrait travailler avec LConvEncoding comme: Code :
|
||
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() Inscription : août 2006 Messages : 3 120 ![]() |
Zoi,
À en croire ton message, tel que je le comprends, la lecture en UTF8 donne le bon résultat. Si ce n'est pas le cas, répond plus clairement : Citation:
Et pourquoi voudrais-tu qu'une lecture en ISO-8859-16 donne un résultat correct si tu n'as pas écrit avec cet encodage ?
__________________
La grandeur de l'homme se mesure à la taille de ses cimetières militaires. |
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() |
En fait je ne connaissais pas l'encodage par défaut. Donc lazarus encode par défaut en utf8, pas besoin de conversion.
Maintenant, il faut que je puisse changer l'encodage et produire si l'utilisateur en fait la demande, des fichiers texte encodés en iso-8859-16. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com