|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.10.2016, 09:28 | #1 | |||
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
нужно объединить две строки в tstrings
добрый день, нужна консультация...Что-то вообще догнать не могу...
Есть Tstrings. Заполняет его clientsocket в связи с этим приходится бороться с разрывами пакетов. При разрыве, чтобы найти это место в блоке ставлю маркер - символы <+> После завершения передачи, в переменной примерно следующий текст начало Цитата:
Нужно удалить символы <+> и объединить строку идущую ДО строки в которой найден маркер разделения: Цитата:
Цитата:
Предположим, нашел я через POS символы <+>, удаляю от начала 3 символа (полностью <+>) но новый пакет начинается с новой строки.... Как их объединить? Пытался прикрутить Concat, как то не заработало ) Последний раз редактировалось aesoem; 30.10.2016 в 09:30. |
|||
30.10.2016, 09:37 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Перед ними еще два символа нужно удалить #13#10 из Text
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
30.10.2016, 10:28 | #3 |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
|
30.10.2016, 14:02 | #4 |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
пришлось еще вводить маркер конца строки "&"
Еще вопрос, как узнать последний символ, предыдущей строки пробовал так: (вернутся на несколько символов назад) Код:
логика хотя бы верна? Если да, то правильно ли я отнимаю -2 Последний раз редактировалось aesoem; 30.10.2016 в 14:06. |
30.10.2016, 14:50 | #5 |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
Код:
Recivetext.Strings[i]:=StringReplac строку виде не удалит |
30.10.2016, 14:55 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Построчно и не получится, в строках нет символов перевода каретки и строки. Они в Text. Последний символ предыдущей -3
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 30.10.2016 в 14:59. |
30.10.2016, 15:17 | #7 |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
Код:
В зависимости от того каков будет первый выбор Код:
Можно например циклично до конца ReciveText.Text запустить проверку и изменять каждый маркер отдельно? StringReplace получается не подходит? у него только два параметра ? rfReplaceAll : Заменяет все вхождения rfIgnoreCase : игнорирует регистр при поиске + понятно, три.... Без параметра тоже считается, то что нужно ) Последний раз редактировалось aesoem; 30.10.2016 в 16:08. |
30.10.2016, 16:14 | #8 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
зачем все сначала собирать в Tstrings, ставить какие-то маркеры, потом разворачивать в строку, удалять маркеры, ...
Не проще ли просто сразу собирать в строку (или массив строк). получая пакет записывать в соответствующий элемент массива строку данных. когда все получено, просто собрать строку (r:=r+s[0]; r:=r+s[1]; ... r:=r+s[n]; ) и ... все.
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 30.10.2016 в 16:16. |
30.10.2016, 16:30 | #9 | |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
Цитата:
|
|
31.10.2016, 12:06 | #10 | |
Форумчанин
Регистрация: 24.12.2007
Сообщений: 288
|
Цитата:
Можно подробнее о данном способе? я так понял если в переменную типа string:=string+resivetext писать полученные данные разрывов не будет? |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
объединить две таблицы | gtr5 | SQL, базы данных | 1 | 22.04.2015 15:39 |
объединить две задачи в одну | Анна Седакова | Помощь студентам | 2 | 07.07.2014 06:43 |
Объединить две процедуры в одну | AndreiFQ | Помощь студентам | 5 | 24.06.2010 09:26 |
как объединить две программы? | kuzmich | Общие вопросы Delphi | 3 | 28.10.2009 19:45 |
Помогите объединить две программы!!!!!!! | leest | Помощь студентам | 3 | 23.05.2008 17:20 |