Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.22;
Скачать: CL | DM;

Вниз

Как преобразовать юникод строку «%D0%9C%» в читаемые символы?   Найти похожие ветки 

 
Kolan ©   (2007-02-22 20:10) [0]

Из википедии до конца не понял как это сделать. Может есть встроеная функция?


 
Palladin ©   (2007-02-23 09:54) [1]

ага

Function Decode(Const s:String):String;
Var
i:integer;
Begin
Result:=""; i:=1;
While i<=Length(s) Do
 Begin
  If s[i]<>"%" Then Result:=Result+s[i] Else
   Begin
    Try
     Result:=Result+Chr(StrToInt("$"+s[i+1]+s[i+2]));
    Except
    End;
    Inc(i,2);
   End;
  Inc(i);
 End;
Result:=Utf8ToAnsi(Result);
End;


 
Kolan ©   (2007-02-23 10:09) [2]

Благодарю. Ты вообще два дела сделал :)
1. По юникод помог
2. А еще StrToInt("$"+s[i+1]+s[i+2]));,
а я дурак пользовался:

function HexToInt(Hex: string): Longint;
var
 I: Integer;
begin
 Result := 0;
 for I := 1 to Length(Hex) do
 begin
   Result := Result shl 4;
   if Hex[I] in ["0"&#133"9"] then
     Result := Result + (Byte(Hex[I]) &#151; 48)
   else
     if (Hex[I] in ["A"&#133"F"]) or (Hex[I] in ["a"&#133"f"]) then
       Result := Result + (Byte(Hex[I]) &#151; 55)
     else
     begin
       Result := 0;
       Break;
     end;
 end;
end;



Страницы: 1 вся ветка

Текущий архив: 2007.04.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.042 c
5-1152100632
Romas81
2006-07-05 15:57
2007.04.22
компоненты MSSQL 2000


2-1175179064
Sinus
2007-03-29 18:37
2007.04.22
Запрос на сравнение


1-1172747769
r9000
2007-03-01 14:16
2007.04.22
Разность между двумя датами?


2-1175681440
bagos
2007-04-04 14:10
2007.04.22
динамическое создание компонента


1-1172164213
Kolan
2007-02-22 20:10
2007.04.22
Как преобразовать юникод строку &amp;laquo;%D0%9C%&amp;raquo; в читаемые символы?