TStringList qui ne veut pas prendre les accents [Résolu]

cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention - 27 avril 2007 à 14:01 - Dernière réponse : cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention
- 27 avril 2007 à 17:17
Bonjour à tous


Alors voila j'ai un programme qui charge un fichier html qui le modifie à un endroit bien précis et qui ensuite l'enregistre


J'utilise un TStringList pour acceder au fichier et le modifier


Sa fonctionne bien mais dès que je veut ajouter une chaine de caractere contenant un ou des accent il enregistre des conneries du genre un carré au lieu d'un accent


Voila le code...


 


...
//Déclaration de mon TstringList au début de ma form
var
  ListeTxt:TStringList;
...

//Ouverture de mon fichier 
//1. J'ouvre le fichier orginal (Entre.html)        2. je le modifie         3. Je l'enregistre sous un autre nom (Sortie.html)
              //Si le fichier de destination existe déja, je le supprime
              if fileExists('F:\Documents and Settings\Intika\Bureau\Site\Sortie'+id.Text+'.html') then
                 Deletefile('F:\Documents and Settings\Intika\Bureau\Site\Sortie'+id.Text+'.html');
              
              //Initialisation de la variable TStringList
              ListeTxt:=TStringList.Create;
              // Ouverture du fichier Original
              ListeTxt.LoadFromFile('F:\Documents and Settings\Intika\Bureau\Site\Entre.html');
              //Je modifie la ligne que je veut avec le Tedit inserer.text
              //Quand c'est du texte normal qui est dans inserer sa marche mais si je met un accent 
              //Il enregistre un carré a la place de l'accent ? puis j'ai l'impression qu'il supprime le caractere avant et apres l'accent
              Listetxt[49]:='';
              // Sauvegarde du fichier
              Listetxt.SaveToFile('F:\Documents and Settings\Intika\Bureau\Site\Sortie'+id.Text+'.html');
              //Libération de la variable
              Listetxt.free;

....

J'aimerai pouvoir utiliser mon TStringList avec des accent
Quel est l'erreur ??
Merci pour votre aide !
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
cs_Loda 900 Messages postés vendredi 3 novembre 2000Date d'inscription 30 juillet 2009 Dernière intervention - 27 avril 2007 à 16:11
3
Merci
salut,

tu dit qu'il met des carré. bon...
regarde ce qu'il met pour de vrai (le code asci). utilise utraedit ou equivalent pour ouvrire le fichier, pas iexplorer.

ensuite, ton problème trouverra surement une solution ici:
http://w3schools.com/html/html_entities.asp

je te rappel que les accent ne peuvent (pas toujours) s'afficher comme ça sur une page html. renseigne toi. ton problème m'as l'air de venir de HTML, pas de TstringList/Delphi.

vérifie toujours les vrai valeur, pas les valeurs affichées. vérifier avant la copie, après et le fichier de sortie. t'arriverra à localiser ton problème en 5 minutes.

bon code,

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.

Merci cs_Loda 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de cs_Loda
Meilleure réponse
cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention - 27 avril 2007 à 17:17
3
Merci
voila j'ai trouver une solution

http://www.delphifr.com/codes/CONVERTIR-CARACTERES-SPECIAUX-CODE-HTML_27193.aspx

Cette fonction permer de convertire le texte en texte html

Merci a tous

Merci cs_intik 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 69 internautes ce mois-ci

Commenter la réponse de cs_intik
cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention - 27 avril 2007 à 16:20
0
Merci
j'utilise pas iexplorer pour voir la page mais notepad++

effectivement quand je renomme ma page html en txt cela me donne les bonne valeur mais quand elle est en .html je n'est pas les bonne valeurs je vais voir comment résoudre sa

Merci encore
Commenter la réponse de cs_intik
cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention - 27 avril 2007 à 16:32
0
Merci
Excuse moi je me suis tromper...
en claire quand j'ouvre le fichier avec notepad normal j'ai les bons caractaires mais avec notepad++ ou ie c'est pas les bon
par ex pour "édoir" TstringList/Delphi.
me donne sa en hexa
e9 64 6f 69 72 = édoir

alors que le html doit avoir
c3 a9 64 6f 69 72 = édoir = édoir

Merci mec franchment chapeau :)
Commenter la réponse de cs_intik
cs_intik 36 Messages postés dimanche 6 juillet 2003Date d'inscription 12 septembre 2007 Dernière intervention - 27 avril 2007 à 16:35
0
Merci
Derniere question il ya pas une solution pour convertir facilement avec delphi ?


bon pour é et è je peut faire une recherche sur mon Tedit

mais bon pour le reste :'(

Merci
Commenter la réponse de cs_intik

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.