Главная страница
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.47 c
2-1175561133
SerJaNT
2007-04-03 04:45
2007.04.22
Присвоить событию свою процедуру


15-1174957429
Gero
2007-03-27 05:03
2007.04.22
Посоветуйте проигрыватель звука


15-1174914604
eXPell
2007-03-26 17:10
2007.04.22
Вот согласно письму - мы потенциальные вирусописатели)))


2-1175142816
O.O
2007-03-29 08:33
2007.04.22
Количество сгруппированых строк


2-1175162634
YadlU
2007-03-29 14:03
2007.04.22
Разность даты/время