Текущий архив: 2011.07.03;
Скачать: CL | DM;
Внизxml не отображает кириллицу Найти похожие ветки
← →
Conflict © (2011-03-15 14:35) [80]оффтоп
А на самом деле в заголовок попадает кракозябла из [5] вот какая, а не Новый справочник:
Р’РёРґ ПоступленияCP1251 → UTF-8
Вид Поступления
/оффтоп
← →
sniknik © (2011-03-15 17:21) [81]http://delphimaster.net/view/2-1298888893/
http://delphimaster.net/view/2-1298888893/
(пора банить за смену ника :)
http://delphisources.ru/forum/showthread.php?t=15743
← →
Inovet © (2011-03-15 17:58) [82]> [81] sniknik © (15.03.11 17:21)
> (пора банить за смену ника :)
Да я сразу те ветки вспомнил. Месяц уже бьётся над справочниками. По-моему какое-то глухое непонимание даже не того, как сделать, а что надо сделать.
← →
boriskb © (2011-03-15 18:42) [83]
> По-моему какое-то глухое непонимание...
что надо учиться.
← →
gonzales (2011-03-19 23:39) [84]переконверти просто строку из UTF-8 в ASCII, вот например функция.
function TForm1.UTF8ToStrSmart(Value: String): String;
{Convert string from UTF-8 format mixed with standart ASCII symbols($00..$7f)}
var
Digit: String;
i: Word;
HByte: Byte;
Len: Byte;
begin
Result := "";
Len := 0;
if Value = "" then Exit;
for i := 1 to Length(Value) do
begin
if Len > 0 then
begin
Digit := Digit + Value[i];
Dec(Len);
if Len = 0 then
Result := Result + UTF8ToStr(Digit);
end else
begin
HByte := Ord(Value[i]);
if HByte in [$00..$7f] then //Standart ASCII chars
Result := Result + Value[i]
else begin
//Get length of UTF-8 char
if HByte and $FC = $FC then
Len := 6
else if HByte and $F8 = $F8 then
Len := 5
else if HByte and $F0 = $F0 then
Len := 4
else if HByte and $E0 = $E0 then
Len := 3
else if HByte and $C0 = $C0 then
Len := 2
else begin
Result := Result + Value[i];
Continue;
end;
Dec(Len);
Digit := Value[i];
end;
end;
end;
end;
а вам, уважаемые стыдно должно быть, не можете парню помочь, просто жлобы какие-то собрались. Вообще чувак, не ходи сюда, есть другие ресурсы и люди там адекватные.
← →
gonzales (2011-03-19 23:44) [85]да, чуть не забыл, вот еще функция
function TForm1.UTF8ToStr(Value: String): String;
{Convert string from UTF-8 format into ASCII}
var
buffer: Pointer;
BufLen: LongWord;
begin
BufLen := Length(Value) + 4;
GetMem(buffer, BufLen);
FillChar(buffer^, BufLen, 0);
MultiByteToWideChar(CP_UTF8, 0, @Value[1], BufLen - 4, buffer, BufLen);
Result := WideCharToString(buffer);
FreeMem(buffer, BufLen);
end;
используем
s:=form1.UTF8ToStrSmart(s1);
← →
Игорь Шевченко © (2011-03-20 00:33) [86]
> а вам, уважаемые стыдно должно быть
Чувство долга есть у каждого, но одним вечно кажется,
что они что-то должны, а другие уверены, что должны им
← →
sniknik © (2011-03-20 11:18) [87]> есть другие ресурсы и люди там адекватные.
сходи уж тогда по третьей ссылке из sniknik © (15.03.11 17:21) [81], и там тоже "постыди" "адекватных" людей которые перестали ему помогать... когда тоже самое пошло "на второй круг". (у нас это пошло раньше, в первых ссылках этого поста)
да, и кстати, твои выложенные процедуры, это тоже не помощь, это медвежья услуга, при применении без понимания. у него же xml, а это значит пофигу в какой оно кодировке внутри, если в его заголовке указана правильная.
к тому же в дельфе есть стандартные процедуры перекодировщики.
блин, потом и рождаются "монстры", указано одно, содержание другое, внутри данных не перекодированные теги, указан внешний парсер/"проверяльщик" (который существует только на машине клиента), и т.д. с которыми мне постоянно приходится иметь дело...
Страницы: 1 2 3 вся ветка
Текущий архив: 2011.07.03;
Скачать: CL | DM;
Память: 0.59 MB
Время: 0.007 c