codepvc
Messages postés24Date d'inscriptionmercredi 29 octobre 2008StatutMembreDernière intervention13 juillet 2011
-
29 oct. 2008 à 10:11
codepvc
Messages postés24Date d'inscriptionmercredi 29 octobre 2008StatutMembreDernière intervention13 juillet 2011
-
30 oct. 2008 à 13:31
Salut à toutes et à tous,
j'ai un problème et je souhaite que vous pouvez m'aider
comment utiliser le tableau du code ascii en Delphi pour chiffrer un message
C’est-à-dire tapez un texte dans un composant Memo et afficher le texte chiffré utilisant le code Ascii dans un autre Memo,
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 29 oct. 2008 à 16:55
Petit coucou rapide le temps de répondre à ce message.
ord(char) te donne le code ascii de ce caractère (exemple : ord('A') donne 65, et ord('a') te donnera 97 ...).
Voici un site avec un tableau ascii (oui les anglais partagent le même alphabet que nous :p ), je m'en sers souvent : www.asciitable.com
Voilà, le reste devrait vite se faire ... une petite boucle sur chaque caractère du mémo ...
Allez tiens :
procedure AsciiProcess(Input, Output: TStrings);
Var
I: Integer;
begin
Output.Clear;
for I := 0 to Length(Input.Text) do
Output.Text := Output.Text + IntToStr(ord(Input.Text[I]));
end;
Voilà ... en prime il te chiffrera avec un 0 devant ...
Je te laisse voir pour le déchiffrage.
Pour appeller : AsciiProcess(MonMemo1.Lines, MonMemo2.Lines);
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 29 oct. 2008 à 18:29
Oui j'ai testé et ça n'a pas planté ... en revanche ça a mis un 0 devant chaque code ascii ...
Mais je pense que c'est dû à la tentative d'accès à une variable objet ... il faudrait passer Input et Output en variable abstraite ... :
procedure AsciiProcess(Input, Output: TStrings);
Var
I: Integer;
InEx, OutEx: TStringList;
begin
InEx := TStringList.Create;
OutEx := TStringList.Create;
InEx.Text := Input.Text;
for I := 0 to Length(InEx.Text) do
OutEx.Text := OutEx.Text + IntToStr(ord(InEx.Text[I]));
Output.Text := OutEx.Text;
OutEx.Free;
InEx.Free;
end;
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 29 oct. 2008 à 18:33
En fait non ... élément 0 inaccessible ...
Donc :
procedure AsciiProcess(Input, Output: TStrings);
Var
I: Integer;
begin
Output.Clear;
for I := 1 to Length(Input.Text) do
Output.Text := Output.Text + IntToStr(ord(Input.Text[I]));
end;
Voilà ! (petite erreur d'inattention ^^)
Cordialement, Bacterius !
Vous n’avez pas trouvé la réponse que vous recherchez ?
codepvc
Messages postés24Date d'inscriptionmercredi 29 octobre 2008StatutMembreDernière intervention13 juillet 2011 30 oct. 2008 à 07:29
Merci de me répondre mais peut être que j'ai pas précisé mon question, je veut utilisé le code Ascii pour trouver le message en binaire
donc comment aller du code Ascii au binaire
Merci encore une deuxième fois Bacterius et cantador