Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как пробежаться по строкам DBMemo? [D7, XP]


Страницы:   1 2

azamatufa ©   (2010-07-05 09:52:00) 

Есть FireBird, Delphi7, TIBDataSet в нем DBMemo поле.
Хочу в это Мемо содержать строки такого формата:
--------------------------------
2004-2005 | менеджер ООО Феникс
2005-2006 | складовщик ЗАО Пупкин
2006-2007 | зам.директора ОАО МММ
--------------------------------
т.е. трудовая деятельность человека, где "|" - разделитель.

Так, я должен писать и читать от туда.

Спасибо!


Anatoly Podgoretsky   (2010-07-05 10:47:00) [21]

> azamatufa  (05.07.2010 10:43:08)  [8]

Конечно можно и нужно.


azamatufa   (2010-07-05 10:43:00) [22]

Спасибо за ответы!

Юрий, просто не охота еще одну таблицу делать для этого... (это про "еще проще")

а с обычным мемо это как?

(а можно ли загнать данные из blob/memo-поля в TStrings напрямую, минуя (не создавая) компонент TDBMemo ? )


Anatoly Podgoretsky   (2010-07-05 10:40:00) [23]

> azamatufa  (05.07.2010 09:52:00)  [0]

Писать через АДД, читать путем обращения к строке по индексу.


Юрий Зотов   (2010-07-05 10:23:00) [24]

Читать - это просто, а вот как туда писать такие строки? DBMemo - он, вообще-то не для этого предназначен, насколько я понимаю.

Будет проще, если использовать обычный Memo. А еще проще - использовать DBGrid и не хотеть странного.


RWolf   (2010-07-05 10:14:00) [25]


> TMemo, который является его предком

TCustomMemo, если быть точным.


И. Павел   (2010-07-05 10:13:00) [26]

[0] -> [i]


И. Павел   (2010-07-05 10:13:00) [27]

А если год всегда состоит из 4 цифр и число пробелов фиксировано, то:

for i := 0 to DBMemo1.Lines.Count - 1 do
begin
 god1 := Copy(DBMemo1.Lines[0], 1, 4);
 god2 := Copy(DBMemo1.Lines[0], 6, 9);
 dolznost := Copy(DBMemo1.Lines[0], 13, Length(DBMemo1) - 12);
end;


RWolf   (2010-07-05 10:11:00) [28]


> Как пробежаться по строкам DBMemo?

Наверно, так же, как и по строкам обычного TMemo, который является его предком.


И. Павел   (2010-07-05 10:08:00) [29]

for i := 0 to DBMemo1.Lines.Count - 1 do
 Caption := Caption + Copy(DBMemo1.Lines[i], Pos('|', DBMemo1.Lines[i]) + 1, Length(DBMemo1.Lines[i]) - Pos('|', DBMemo1.Lines[i]));

Для более сложного разбора лучше использовать регулярные выражения.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо