Вниз
Скачать: CL | DM;

Добавить содержимое буфера к Stringlist   Найти похожие ветки 

← →
AndreyDm   (2003-08-20 14:09) [0]

Как с минимальными заморочками добавить содержимое последовательности буферов (периодически подчитывается вывод консольной программы в буфер) в stringlist, с учётом того, что нужно получить правильную структуру строк (т.е. если в буфере 5 строк, то это должно превратится в 5 элементов в stringlist-e), и того, что строка может начаться в одном, а закончиться в следущем буфере?
Или всё муторно и ручками?


← →
mOOx_ ©   (2003-08-20 14:13) [1]

> периодически подчитывается вывод консольной программы в буфер
Поясни.


← →
Skier ©   (2003-08-20 14:14) [2]


> и того, что строка может начаться в одном, а закончиться
> в следущем буфере?

Как так ?!


← →
panov ©   (2003-08-20 14:18) [3]

MyList.Text := MyList.Text + MyBuf;


← →
mOOx_ ©   (2003-08-20 14:25) [4]

Ну это смотря какой буфер :)


← →
AndreyDm   (2003-08-21 12:04) [5]

Немного пояснений (сори за сумбурный вопрос).
Консольная программа, запущенная из моей проги, выдаёт достаточно большой объём информации (~100-1000 строк в минуту). Передача этих сообщений идёт через буфер по принципу: заполнился - отдал информацию (отсюда и разрывы строк: начало в одном дампе буфера, продолжение в следующем). В принципе предложенный вариант - рабочий. У меня так:
MyList.Text := MyList.Text + StrPas(MyBuf);
Но остаются разрывы строк, и главное мне кажется это жутко не оптимальным: строковая переменная, размером (очень скоро) за 1000 строк пересоздаётся офигителное количество раз. Хотелось бы что то типа
MyList.Strings.Append(StrPas(MyBuf));
но так не проканывает (пишет буфер как одну строку).
Вот вопрос и был как то можно попроще. Посложнее я знаю сам :-))


← →
Serginio666   (2003-08-21 13:29) [6]

Посмотри
http://www.1c.hippo.ru/cgi-bin/predownl.cgi?id=2019
там есть пример работы с кольцевым буфером и чтение строк.


← →
Anatoly Podgoretsky ©   (2003-08-21 13:35) [7]

В таком случае возникает вопрос, а что же тебя является разделителем строк.


← →
AndreyDm   (2003-08-22 06:11) [8]

Разделители строк стандартные, но при append (add) они почему то не воспринимаются (отображаются ввиде квадратиков). Вот и получается одна строка из всего буфера. Подумалось, может тут ещё и конкретный компонент виноват - использую synedit. Поэкспериментирую.


← →
Rouse_ ©   (2003-08-22 06:43) [9]

Если под стандартными подразумевается CLRF то ошибка в коде.

Если отображаются квадратиками и ошибки в коде нет - значит не стандартные :)

Желаю успехов

ЗЫ: Приведи код



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.013 c
6-10850
панИкёр
2003-06-30 07:37
2003.09.04
как сделать на компьютере фтп сервер?


1-10792
otido
2003-08-21 18:12
2003.09.04
CAPI и перехват входящего звонка


14-10949
ehri
2003-08-16 12:45
2003.09.04
Gif Animated


3-10622
rosl
2003-08-13 12:16
2003.09.04
копирован ие3


1-10741
Fog
2003-08-19 19:00
2003.09.04
Синтаксис RTF




   Наверх