Bonjour,
J'ai un petit problème de conversion de chaine de caractère.
J'ai une chaine de caractère qui est contenue dans un shortString qui contient des caractères non imprimables et j'aimerai les récupérer dans un string.
exemple :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
Var
S : ShortString;
St : String;
a1,a2,b1,b2 : integer;
Begin
S := #151#0;
a1 := ord(S[1]); // = 151
a2 := ord(S[2]); // = 0
// conversion
St := S;
b1 := ord(St[1]); // = 8212 !!!!!!!
b2 := ord(St[2]); // = 0
end; |
Dans cet exemple, en executant en pas à pas, on observe dans la fenetre watch que b1 = 8212 au lieu de 151
En revanche si je passe par "char" comme ceci, ça marche:
St := char(S[1])+char(S[2])
Mais je cherche quelque chose de plus simple plutot que de faire une boucle pour chaque caractère.
Partager