Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.034 c
1-1172750179
S@shka
2007-03-01 14:56
2007.04.22
Диспетчер задач / Память процесса


2-1175339458
Ezorcist
2007-03-31 15:10
2007.04.22
Как послать форме message и отреагировать на него?


15-1174848004
_Knight_
2007-03-25 22:40
2007.04.22
Почему-то не могу ничего запостить&amp;#133 пароль не принимается.


2-1175156081
Shpux
2007-03-29 12:14
2007.04.22
Имя поля с пробелом


2-1175519849
Solo
2007-04-02 17:17
2007.04.22
There is no overloaded version of FindNode that can be called w




   Наверх