Changement des é, è, ô etc [Résolu]

Also know as 269 Messages postés samedi 13 décembre 2003Date d'inscription 22 novembre 2010 Dernière intervention - 30 oct. 2004 à 14:30 - Dernière réponse : Also know as 269 Messages postés samedi 13 décembre 2003Date d'inscription 22 novembre 2010 Dernière intervention
- 31 oct. 2004 à 19:17
[font= Comic Sans MS]Bonjour,

Je crée mon site Internet en utilisant UltraEdit-32.
Pour cela aucun problème.
Mais il y a une tâche qui m'énerve quelques peu c'est de remplacer à chaque fois dans les fichier cela "e" par un "é".

J'aimerais automatiser une tâche pour qu'un programme en Delphi m'automatise automatiquement cette tâche.

Par exemple, une fois mon fichier fini en ayant laissé mes é, è, etc.
Je prend mon programe Delphi, j'ouvre mon fichier, et je clique par exemple sur le bouton "Appliquer" pour qu'il me change automatiquement tous mes é, è, etc par le code correct.

Je suis débutant dans ce language, donc si vous avez une solution, s'il vous plaît faite que ce soit clair, car sinon je vais rien comprendre !

J'ai bien chercher moi même, en faisant à ma manière :
- J'ai crée deux mémo, l'un avec le fichier original et l'autre avec les caractères modifié, normalement.
- Pas de rpoblème pour ouvrir mon fichier dans le memo1 et j'utilise ceci :
 procedure  TForm1.Memo1Change(Sender: TObject);
begin
  Memo2.Text: =Memo1.Text
end;


- Par la suite en cherchant un peu j'ai vu que je pouvais utiliser la fonction key, mais je n'arrive pas à l'utiliser pour juste transformer les "é" par exemple et les remplacer par des é dans le memo2.

Je vous remercie d'avance !
/font
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
japee 1799 Messages postés vendredi 27 décembre 2002Date d'inscription 19 juillet 2018 Dernière intervention - 31 oct. 2004 à 03:12
3
Merci
Also know as, si tu veux passer par un memo pour convertir tes caractères spéciaux ou accentués, je viens de mettre à disposition un code ici :

Convertir les caractères spéciaux en code html

Bonne prog' :-p

P-S: tu peux toujours adapter pour modification directe dans le fichier, le principe reste le même.

Merci japee 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de japee
jinh68 215 Messages postés mardi 29 juillet 2003Date d'inscription 1 septembre 2006 Dernière intervention - 30 oct. 2004 à 15:06
0
Merci
Il me semble qu'en changeant uniquement le charset dans toutes tes pages (UTF-8, etc...) tu peux pallier au problème des accents.

Donc si tu veux faire un programme Delphi, il te suffira de changer la première de chaque fichier html.

J'avais eu ce souci avec du Xml et j'avais suivi cette démarche.

j!nH
Commenter la réponse de jinh68
Also know as 269 Messages postés samedi 13 décembre 2003Date d'inscription 22 novembre 2010 Dernière intervention - 30 oct. 2004 à 16:24
0
Merci
Je sais !
Mais justement je ne veux pas changé mon doctype.
J'utilise le doctype transisionnel :

<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/transitional.dtd">


C'est pour cela que je vous demande comment je peux faire pour créer un programme tout bête qui remplace cela automatiquement.

On m'a aussi parlé de cela :

procedure TForm1.ModifFichier(sFichierSource, sFichierDest: String)
var
fSrc, fDest: TextFile;
sBuffer: String;
begin
AssignFile(fSrc, sFichierSource);
AssignFile(fDest, sFichierDest);
Reset(fSrc);
Rewrite(fDest);
While not eof(fSrc) do begin
Readln(fSrc, sBuffer);
AnsiReplaceStr(sBuffer, 'é', 'eacute;');
AnsiReplaceStr(sBuffer, 'è', 'eagrave;');
AnsiReplaceStr(sBuffer, 'à', 'agrave;');
...
Writeln(fDest, sBuffer);
End;
CloseFile(fSrc);
CloseFile(fDest);
end;


Mais je n'ai rien compris....
Je suis débutant !
Commenter la réponse de Also know as
jinh68 215 Messages postés mardi 29 juillet 2003Date d'inscription 1 septembre 2006 Dernière intervention - 30 oct. 2004 à 17:04
0
Merci
Re,

Bon je crois pouvoir texpliquer :

sFichierSource représente ton doc html non modifié
sFichierDest représente ton doc html modifié

procedure TForm1.ModifFichier(sFichierSource, sFichierDest: String);
var
fSrc, fDest: TextFile;
sBuffer: String;
begin
AssignFile(fSrc, sFichierSource);
AssignFile(fDest, sFichierDest);
Reset(fSrc);//se place au debut du fichier source
Rewrite(fDest);//Réécrit le fichier destination
While not eof(fSrc) do begin//Tant qu'on est pas à la fin du fichier
Readln(fSrc, sBuffer);//Lire la ligne et la stocker dans sBuffer
AnsiReplaceStr(sBuffer, 'é', 'eacute;');//eacture; eagrave; sont des identifiants html pour les voyelles accentuées.
AnsiReplaceStr(sBuffer, 'è', 'eagrave;');//AnsiReplaceStr remplace les accents par les identifiants
AnsiReplaceStr(sBuffer, 'à', 'agrave;');
...
Writeln(fDest, sBuffer);//on écrit la ligne modifiée dans le fichier de destination
End;
CloseFile(fSrc);
CloseFile(fDest);
end;



j!nH
Commenter la réponse de jinh68
Also know as 269 Messages postés samedi 13 décembre 2003Date d'inscription 22 novembre 2010 Dernière intervention - 31 oct. 2004 à 19:17
0
Merci
Merci beaucoup opur ce code qui est très bien est qui n'a guèrebesoin d'être changé sauf par les extremiste du code ASCII, je parle de ceux qui veulent à tout prit changer en é. Pour ma part cela est parfait !! Merci beaucoup en tout cas !
Commenter la réponse de Also know as

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.