Html - LoadFromFile [Résolu]

ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 4 mars 2005 à 15:39 - Dernière réponse : ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention
- 5 mars 2005 à 15:32
Bonjour,
Cela fait déjà un petit moment que je cherche comment importer un fichier html dans une variable TStrings. LoadFromFile provoque des erreurs lors de la conversion des caractères accentués etc...

Avez-vous une autre solution ?
Merci d'avance.


@+
Bonne Prog'
Nico
Afficher la suite 

10 réponses

Répondre au sujet
Emandhal 199 Messages postés dimanche 2 mars 2003Date d'inscription 10 octobre 2006 Dernière intervention - 5 mars 2005 à 11:24
+3
Utile
un "é" devient un "é" parce que le format est l'UTF8 pour ces chaines... Il faut donc pour chaques lignes utiliser la syntaxe suivante :
Strings[Index] := UTF8Decode(Strings[Index]);

si tu ne veux pas faire 2 passes il faudra que tu fasses le LoadFromFile à la main :)

Tout problème a sa solution... Mais en général, c'est jamais la bonne...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Emandhal
Emandhal 199 Messages postés dimanche 2 mars 2003Date d'inscription 10 octobre 2006 Dernière intervention - 5 mars 2005 à 11:25
+3
Utile
oops UTF8Decode renvoie un WideString... Enfin bref, je pense que tu as deja un bonen piste

Tout problème a sa solution... Mais en général, c'est jamais la bonne...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Emandhal
japee 1792 Messages postés vendredi 27 décembre 2002Date d'inscription 12 novembre 2016 Dernière intervention - 5 mars 2005 à 15:26
+3
Utile
Ok, ni69, je crois que j'ai compris. Je suis un peu long à la détente parfois.

J'avais posté un code à ce sujet ici :



[code.aspx?id=27193 CONVERTIR LES CARACTÈRES SPÉCIAUX EN CODE HTML]



Ce code convertit les caractères accentués en leur code html strict (pas symbolique, quoi).



Bonne prog'
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de japee
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 4 mars 2005 à 16:37
0
Utile
Hello Ni69,



Ecoute je viens de faire ca comme test
procedure TForm1.Button2Click(Sender: TObject);



var

Files : TStringList;



begin

Files := TStringList.Create;



Try

Files.LoadFromFile(ExtractFilePath(Application.exeName) + 'Test.html');

Memo1.Lines := Files;

Finally

Files.Free;

end;

end;



Et je n'ai eu aucun message d'erreur et il m'a bien afficher les ligne dans le memo.


Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Commenter la réponse de jmp77
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 4 mars 2005 à 20:43
0
Utile
En fait, quand je parle d'erreur, il ne s'agit pas de messages d'ereur, mais d'erreurs dans le texte chargé : par exemple, un "é" devient un "é"... ce qui est assez embêtant...


@+
Bonne Prog'
Nico
Commenter la réponse de ni69
jmp77 1232 Messages postés lundi 4 février 2002Date d'inscription 4 octobre 2006 Dernière intervention - 4 mars 2005 à 21:35
0
Utile
Lol effectivement ca peut etre embettant.



Je regarde ca des que je peux. Mais je n'ai pas d'idée la comme ca.

Bonne prog,
JMP77.

N'oubliez pas de cliquer sur réponse acceptée.
Commenter la réponse de jmp77
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 4 mars 2005 à 22:33
0
Utile
merci...


@+
Bonne Prog'
Nico
Commenter la réponse de ni69
japee 1792 Messages postés vendredi 27 décembre 2002Date d'inscription 12 novembre 2016 Dernière intervention - 4 mars 2005 à 23:51
0
Utile
Bizarre autant qu'étrange, ni69...



J'ai essayé pour en avoir le coeur web...
euh net, chez moi les ç (ç), é (é), à
(à), etc... apparaissent bien tels qu'ils sont codés dans la page html.




Ou alors, je n'ai pas tout compris. En particulier comment un "é" devient un "é" ???



Voici juste pour info le code que j'ai utilisé, bien que j'imagine que ça ne soit pas ce qui te pose problème.



procedure TForm1.Button1Click(Sender: TObject);

var TS: TStrings;

begin

if OpenDialog1.Execute then

begin

TS := TStringList.Create;

try

TS.LoadFromFile(OpenDialog1.FileName);

ListBox1.Clear;

ListBox1.Items.Assign(TS);

finally

TS.Free;

end;

end;

end;



Bonne prog'
Commenter la réponse de japee
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 5 mars 2005 à 13:38
0
Utile
Japee >> mon problème est qu'il ne charge pas correctement les caractères "é", "è", "à", etc... pas leurs équivalenbts html "&eacute", etc...
Mon projet est un convertisseur de caractères accentués en leur équivalent html... donc au départ, j'ai des "é"... dans le fichier html.
Emandhal >> merci je n'y avait pas pensé

Merci à vous tous !

PS : En chargeant le texte dans un RichEdit, le problème est aussi résolu


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 5 mars 2005 à 15:32
0
Utile
Merci japee j'avais déjà vu ce code, mais j'avais un problème pour ouvrir le fichier html, après, ça allait tout seul, mais il fallait avoir les bons caractères au départ, sinon ça convertissait rien du tout !


@+
Bonne Prog'
Nico



<HR>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
Commenter la réponse de ni69

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.