1. Кодировка текста в ASCII
function StringToCode(s: string): string;
var i: integer;
n: string;
begin
Result:='';
for i:=1 to Length(s) do
begin
n:=IntToStr(Ord(s[i]));
while Length(n)<3 do
n:='0'+n;
Result:=Result+'#'+n;
end;
end;
где:
Например,
StringToCode('Я и ты!') выведет
'#223#032#232#032#242#251#033'.
Примечание. Если хотите, чтобы результат был
переменной длины (например, '#223#32#232#32#242#251#33'
– удалены нули в первых разрядах), можно удалить фрагмент программного кода:
while Length(n)<3 do
n:='0'+n;
2. Раскодировка текста из ASCII
function CodeToString(s: string): string;
var i: integer;
begin
Result:='';
while s<>'' do
begin
i:=Pos('#', s);
if i=0 then
Exit;
Delete(s, 1, i);
i:=Pos('#', s);
if i=0 then
i:=Length(s)+1;
Result:=Result+Char(StrToInt(Copy(s, 1, i-1)));
Delete(s, 1, i-1);
end;
end;
где:
Например,
CodeToString('#223#32#232#32#242#251#33')
выведет 'Я и ты!'.
|