Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2012, 18:38   #1
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию Проблема с кодировкой в Delphi 2010

Один и тот же код в проекте в Delphi 7 и Delphi 2010
Код:
Memo1.Text := IdHTTP1.Get('localhost');
работает по разному. В Delphi 7 кириллица отображается нормально, в Delphi 2010 отображается так: àíäðþõà 58. AnsiToUtf8 и Utf8ToAnsi не помогают. В браузере текст отображается нормально при кодировке Windows-1251. Как решить проблему с кодировкой?
Shouldercannon вне форума Ответить с цитированием
Старый 15.06.2012, 18:53   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

а каким боком тут utf8, если страница в 1251. Так и надо сказать дельфи:

Код:
type
  s1251 = type AnsiString(1251);

...
  Memo1.Text := s1251( IdHTTP1.Get('localhost') );
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 15.06.2012, 19:12   #3
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Не помогло. Фокусник отображается как Oieoniee
Shouldercannon вне форума Ответить с цитированием
Старый 15.06.2012, 19:38   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Показанный пример в кодировке macucrainian и раскодируется как 'андрюха 58'. Нет?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 15.06.2012, 21:20   #5
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Не понял вас
Shouldercannon вне форума Ответить с цитированием
Старый 15.06.2012, 22:22   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

UTF8Decode ?
Человек_Борща вне форума Ответить с цитированием
Старый 15.06.2012, 23:12   #7
Shouldercannon
Участник клуба Подтвердите свой е-майл
 
Аватар для Shouldercannon
 
Регистрация: 26.01.2008
Сообщений: 1,897
По умолчанию

Не помогает
Shouldercannon вне форума Ответить с цитированием
Старый 15.06.2012, 23:25   #8
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

UTF8Decode,UTF8Encode их много. Читайте заголовки http ам должно говоритьчся какая кодировка.
Человек_Борща вне форума Ответить с цитированием
Старый 15.06.2012, 23:40   #9
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

если страница в 1251, utf8 явно мало чем поможет

в первом сообщении я забыл, что бороться прийдётся с серъёзным противником — супермозгом авторов инди. Метод борьбы несколько сложнее, чем хотелось бы:


Код:
type
  s1251 = type AnsiString(1251);

var
  s: string;
  c: s1251;
begin
  s := IdHTTP1.Get('http://localhost/');
  setLength(c, length(s));
  IdHTTP1.Response.ContentStream.Read(c[1], length(s));
  //
  Memo1.Lines.Add(c);
end;
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 15.06.2012, 23:56   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

veniside, +1. По этому я выкинул инди и поставил Synapse. Он меньше, он проще, он удобнее. +хороший пример работы Winsock
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с кодировкой текста Delphi XE bagabuga Работа с сетью в Delphi 4 27.02.2012 22:02
Delphi 2010. Проблема с формами. Multiman Помощь студентам 3 17.12.2011 20:16
dbf и delphi-проблема с кодировкой betirsolt БД в Delphi 2 29.06.2011 18:40
Проблема с кодировкой работы Delphi с MySQL Leximus БД в Delphi 4 25.01.2011 06:01
Проблема с Delphi 2010 gisinfo Общие вопросы Delphi 1 05.12.2010 23:16