Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Непечатные символы в ответе idHttp.post(...), ответ сервера строками в StringList 
V
    Опции темы
Eva_Adamova
Дата 21.5.2007, 02:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 26.3.2007
Где: Петропавловск-Кам чатский

Репутация: нет
Всего: нет



метод  IdHttp.post(либо Get, неважно) возвращает ответ сервера в виде строки.
Если эту строку добавить в мемо  
Код

примерно
Memo1.lines.add(IdHttp.post('server'...))

То ответ отображается нормально, с переносами.
Однако если создать StringList, добавить в него эту строку и отобразить StringList в мемо, то получается куча непечатных символов "|"
Код

StrList:=TStringList.Create;
  try  
    StrList.Add(IdHttp.post('server'...));
    Memo1.Lines:=StrList;
  finally
    StrList.Free;

Я выбрала StringList для хранения ответа сервера для того, чтобы производить там построчные действия.
Мне нужно преобразовать ответ сервера в нормальный текст с переносами, так, как это делает Memo или, скажем, Опера при просмотре исходного текста. 

Что здесь можно придумать?
PM MAIL ICQ   Вверх
aktuba
Дата 21.5.2007, 06:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Вообще-то, намного проще сделать так:
Код

  str := IdHTTP.Post('server', ...);
  Memo1.Lines.Text := str;


или

Код

StrList := TStringList.Create;
try
  str := IdHTTP.Post('server', ...);
  StrList.Text := str;
  ...
finally
  StrList.Free;
end;



--------------------
user posted image
PM MAIL WWW Skype   Вверх
Eva_Adamova
Дата 21.5.2007, 07:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 26.3.2007
Где: Петропавловск-Кам чатский

Репутация: нет
Всего: нет



Цитата(aktuba @  21.5.2007,  15:46 Найти цитируемый пост)

  StrList := TStringList.Create;
try  str := IdHTTP.Post('server', ...);
  StrList.Text := str;
finally  
  StrList.Free;
end;


В том до всё и дело, что при таком подходе в StringList - 1 строка, т.е. 
Код

StrList := TStringList.Create;
try
  str := IdHTTP.Post('server', ...);
  StrList.Text := str;
  Showmessage(inttostr(StrList.Count)); //Здесь всего одна строка!


А мне нужна многострочность в StringList'е. Можно конечно сначала грузить в Мемо, затем из мемо в StringList, тогда всё получается, но неужели нельзя обойтись без лишнего компонента.

Это сообщение отредактировал(а) Eva_Adamova - 21.5.2007, 07:50
PM MAIL ICQ   Вверх
aktuba
Дата 21.5.2007, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Значит Вам ответ приходит в виде одной строки. У меня так работает на ура =))) Демо код приложил - попробуйте =)))

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  tst.rar 4,66 Kb


--------------------
user posted image
PM MAIL WWW Skype   Вверх
aktuba
Дата 21.5.2007, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Ну вот так всегда... Как проблема - люди помогите. А как решили проблему - так даже тему не отметили, что проблема решена. Хоть бы сказали что к чему - другим ведь тоже может когда-нибудь помочь =)


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Eva_Adamova
Дата 21.5.2007, 23:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 26.3.2007
Где: Петропавловск-Кам чатский

Репутация: нет
Всего: нет



aktuba, не хочу никого обидеть, но если бы вы посмотрели налево от поста, то увидели бы мой город, а это значит, что в тот момент, когда вы написали мне ответ, я крепко спала в час ночи. Поэтому и не могла ответить smile 

Насчёт решения - большое спасибо!!! Всё работает, ключевой момент был в использовании свойства Text, вместо метода Add применительно к StringList. Честно говоря, совсем запамятовала о Text)))
Опишу подробнее:
Код

//Так НЕ работает
  StrList := TStringList.Create;
  try  
    StrList.Add(IdHttp.post('server'...)); //Сейчас в списке ОДНА строка

//Так  РАБОТАЕТ
  StrList := TStringList.Create;
  try  
    StrList.Text:=(IdHttp.post('server'...)); //Сейчас в списке многострочный текст

PM MAIL ICQ   Вверх
aktuba
Дата 21.5.2007, 23:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Цитата

aktuba, не хочу никого обидеть, но если бы вы посмотрели налево от поста, то увидели бы мой город, а это значит, что в тот момент, когда вы написали мне ответ, я крепко спала в час ночи. Поэтому и не могла ответить smile 


Да я не в обиде. И не про Вас это было, а вообще... Просто люди на форуме так привыкли поступать - а это плохо...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0813 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.