1. Кодировка текста в ASCII
function StrToCode(s: string; len: byte = 1): string;
var i: integer;
n: string;
begin
Result:='';
for i:=1 to Length(s) do
begin
n:=IntToStr(Ord(s[i]));
while Length(n)<len do
n:='0'+n;
Result:=Result+'#'+n;
end;
end;
где:
s – исходная строка;
len – количество цифр для кодирования одного символа.
Например,
StrToCode('Я и ты!', 5) выведет
'#00223#00032#00232#00032#00242#00251#00033';
StrToCode('http://newerow1989.ru') выведет
'#104#116#116#112#58#47#47#110#101#119#101#114#111#119#49#57#56#57#46#114#117'.
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;
где:
Например,
CodeToStr('#00223#00032#00232#00032#00242#00251#00033')
выведет 'Я и ты!';
CodeToStr('#104#116#116#112#58#47#47#110#101#119#101#114#111#119#49#57#56#57#46#114#117')
выведет 'http://newerow1989.ru'.
|