Html - LoadFromFile

Résolu
Signaler
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
-
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
-
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
A voir également:

10 réponses

Messages postés
194
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
10 octobre 2006
2
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...
Messages postés
194
Date d'inscription
dimanche 2 mars 2003
Statut
Membre
Dernière intervention
10 octobre 2006
2
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...
Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
8
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'
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
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.
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
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
Messages postés
1119
Date d'inscription
lundi 4 février 2002
Statut
Membre
Dernière intervention
4 octobre 2006
7
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.
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
merci...


@+
Bonne Prog'
Nico
Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
8
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'
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
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 !
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
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 !