|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.05.2007, 15:07 | #1 |
Пользователь
Регистрация: 26.05.2007
Сообщений: 64
|
Memo
Как сделать так штобы , например есть текст: привет|Всему|свету
чтобы в memo паказывылся текст до первой | |
26.05.2007, 19:19 | #2 |
Форумчанин
Регистрация: 05.05.2007
Сообщений: 236
|
|
26.05.2007, 19:56 | #3 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
например, функцией pos определяешь первое вхождение этого символа в строку и копируешь в мемо не всю строку, а от первого символа, до найденного индекса
|
26.05.2007, 20:22 | #4 |
Пользователь
Регистрация: 26.05.2007
Сообщений: 64
|
ну смотри.
Есть тестовый файл 1.txt. в этом файле запись: М@Х.RU|www.max.ru/web|www.max.ru/cgi-bin/links/add.cgi|CY: Каталог содержит 501 сайт (май 2000) в 16 тематических разделах. Поиск, рейтинг, сайт дня, рассылка| как зделать штобы memo отображало только "М@Х.RU" т.е до первой | |
26.05.2007, 21:20 | #5 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
находиш первый символ, копируеш строку, запоминаеш номер символа после этого символа, находиш второй символ, копируеш от того что мы запомнили до этого, опять жэ запоминаеш номер следуещего символа, и повторяеш эту процедуру до EOF(твой файл)
Времени нету писать код, думаю розберёшся и с этим Удачи!
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
|
27.05.2007, 07:40 | #6 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
а вообще зачем это надо? Нафиг мемо для отображения одной строки? да и думаеца мне остальные записи тоже понадобятся...
|
27.05.2007, 18:12 | #7 | |
Пользователь
Регистрация: 26.05.2007
Сообщений: 64
|
Цитата:
|
|
27.05.2007, 19:11 | #8 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
точно не помню уже работу с файлами, но что-то в этом роде:
var f: textfile; s: string; c: char; begin assign(f,'C:\123.txt'); reset(f); s := ''; while (not eof(f)) do begin read(f,c,1); if (c = '|')then break; s := s + c; end; close(f); end; соответственно в s будет первая строка |
27.05.2007, 22:18 | #9 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
или для всего файла
s: Tstrings; d: integer; d:=0; for i:=1 to sizeof(file) do begin read(f,c,1) if (c = '|') then d:=d+1; s[d] := s[d] + c; end;
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Memo | WOLFak | Компоненты Delphi | 11 | 03.06.2008 10:58 |
Memo | -=<[Evklidd]>=- | Общие вопросы Delphi | 3 | 01.02.2008 13:44 |
Memo | Kocapb | Общие вопросы C/C++ | 2 | 17.01.2008 02:06 |
Memo | MAcK | Общие вопросы Delphi | 1 | 02.10.2007 17:14 |
В Memo сделать так, чтобы текст был разного цвета, разноцветный memo | Artem | Компоненты Delphi | 3 | 07.09.2007 13:40 |