Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
ВнизА в %C0 Найти похожие ветки
← →
DelphiN! © (2004-10-05 09:51) [0]Нет ли у кого случайно ф-ии, переводящей русские буквы в их "интернет коды"?
Заранее благодарен!
← →
Fay © (2004-10-05 09:55) [1]>> Увлечения / хобби
>> Программирование в Делфи, С++, ассемблере и других яхыках
Вы эту анкету "поносИть" взяли? С вопросом как-то не вяжется.
← →
DelphiN! © (2004-10-05 10:05) [2]А что вы видете такого в этом вопросе, просто никогда этим не интересовался и не сталквался...
← →
Мастер © (2004-10-05 10:14) [3]% означает всего лишь, что за ним следует HEX-код символа.
То есть переводи символ в шестнадцатеричный вид, добавляй "%".
← →
DelphiN! © (2004-10-05 10:17) [4]Спасибо за помошь!
← →
Skyle © (2004-10-05 10:48) [5]> [3] Мастер © (05.10.04 10:14)
Не все символы переводятся напрямую.
Эти символы не переводятся
"A".."Z","a".."z","*","@",".","_","-","0".."9","$","!","""","(",")"]
← →
Мастер © (2004-10-05 10:51) [6]>Skyle © (05.10.04 10:48) [5]
Можешь переводить и их совершенно спокойно, по крайней мере латинский буквы. Про остальные сказать ничего не могу.
← →
П7 (2004-10-05 11:09) [7]Ну, видишь какой ты на самом деле умный, знаешь, какие символы не переводятся, вот и не переводи их. Что тут сложного-то? Объясни свою проблему? Ты неумеешь программировать? Или тебе нужна таблица символов? Или что ещё? Где вопрос-то спрятан?
← →
DelphiN! © (2004-10-06 08:33) [8]Вот написал процедурку, но работает она коряво :
function BinStringToUnicode(s:String):String;
var
m:set of char;
i:integer;
str:String;
buff,text:PChar;
begin
m := ["A".."Z","a".."z","*","@",".","_","-","0".."9","$","!","""","(",")"];
i := 1;
while i <= length(s) do
begin
if not (s[i] in m) then
begin
str := s[i];
buff := PChar(str);
text := buff;
BinToHex(buff,text,2);
str := text;
delete(s,i,1);
insert("%"+str,s,i);
i := i+length(str);
end else
s[i] := s[i];
inc(i);
end;
result := s;
end;
← →
Alx2 © (2004-10-06 09:22) [9]
Function Convert(Const S: String): String;
Const
ValidSet = ["A".."Z", "a".."z", "*", "@", ".", "_", "-", "0".."9", "$", "!", """", "(", ")"];
HexTable = "0123456789ABCDEF";
Var
k: integer;
Begin
Result := "";
For k := 1 To Length(S) Do
If S[k] In ValidSet Then
Result := Result + S[k]
Else
Result := Result + "%" + HexTable[1+Byte(S[k]) Shr 4]+
HexTable[1+Byte(S[k]) And $F];
End;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.035 c