Recupérer le code ASCII de chaque caractere d'une string

CyberTwister Messages postés 6 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 7 mai 2008 - 7 mai 2008 à 15:48
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 - 7 mai 2008 à 21:51
Bonjour :D

j'ai une phrase dans un Edit.text.
Je voudrais faire une boucle pour lister ttes les lettres et faire une action suivant leur caractere ANSII.

J'ai donc commencé par :

var
Longueur: Integer;
i : integer;
L :  string;
begin
Longueur := Length(Edit2.Text);
  for i:=1 to Longueur  do
    begin
        L := Copy(Edit2.Text,i,1);
        // Showmessage ici
    end;
end;

Chaque lettre est donc stockée tour à tour dans la variable L.
Comment puis-je afficher son caractere ANSII
Je sais que c'est avec Ord, mais j'echoue a chaque fois sur des types de variables incompatible.

Merci beaucoup pour toute aide :D

6 réponses

cs_askil2000 Messages postés 92 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 12 avril 2010
7 mai 2008 à 16:00
var

L : Char;

Alex
0
CyberTwister Messages postés 6 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 7 mai 2008
7 mai 2008 à 16:06
Si je met :
L: Char

j'ai une erreur ici :
L := Copy(Edit2.Text,i,1);
Type incompatible 'Char' et 'tcaption'
0
cs_askil2000 Messages postés 92 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 12 avril 2010
7 mai 2008 à 17:08
Oui en effet il faut déclarer une deuxième variable string qui prend la valeur de Edit2.Text

ensuite

L := MaVar[I];

Alex
0
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 18
7 mai 2008 à 17:08
Bonjour,


var
  Longueur: Integer;
  i : integer;
  L :  char;
...
  Longueur := Length(Edit2.Text);
  for i:=1 to Longueur  do begin
    L := Edit2.Text[i];
    Showmessage(IntToStr(Ord(L)));
  end;
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
7 mai 2008 à 20:02
procedure GetStringCharCodes(const S: String; var CharCodes: TByteDynArray);
var L : integer;
begin
  L := Length(S);
  SetLength(CharCodes, L);
  Move(S[1], CharCodes[0], L);
// ou (mesurer les performances)
//  CopyMemory(@CharCodes[0], PChar(S), L);
end;



 

0
Caribensila Messages postés 2527 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 16 octobre 2019 18
7 mai 2008 à 21:51
... Question perfs, c'est poil kif-kif.
0
Rejoignez-nous