Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 01.06.2008, 06:44
Dimo444ka Dimo444ka вне форума
Прохожий
 
Регистрация: 25.05.2008
Сообщения: 4
Репутация: 10
По умолчанию Работа со списками

Помогите найти побольше информации как работать со списками.
Вот у меня есть текст, который нужно считать построчно и найти и вывести в нём нужную информацию, как это можно сделать?
Ответить с цитированием
  #2  
Старый 01.06.2008, 21:47
Burka Burka вне форума
Начинающий
 
Регистрация: 10.06.2007
Сообщения: 163
Репутация: 10
По умолчанию

есть тип TList в делфи, с помощью него можно
Ответить с цитированием
  #3  
Старый 02.06.2008, 00:39
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,093
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Извращенец!
Тут же написано - текст.
Проблема в том, что с использованием списка (в данном случае TStringList) файл будет считан целиком. Т.е. если тебе надо остановиться и не считывать файл целиком, то придется городить свое чтение.
Поиск а TStringList либо перебирая построчно, либо сразу в TStringList.Text.
Ответить с цитированием
  #4  
Старый 11.06.2008, 00:10
Жендос Жендос вне форума
Прохожий
 
Регистрация: 10.06.2008
Адрес: Ижевск
Сообщения: 8
Репутация: 10
По умолчанию

Используй TListBox
У него есть функция LoadFromFile(const FileName: string)
Она считыват весь файл и выводит его построчно в ListBox, в этом случае он считает и выведет в TListBox весь файл!

Код:
ListBox1.Items.LoadFromFile('C:\1.txt');

Или же если нужно отсортировать содержимое по каким то критериям, то можно использовать вот этот код:

Код:
Var
   F: TextFile;
   s: String;
Begin
 AssignFile(f,'C:\1.txt');
 Reset(f);

//Запускаем цикл, который будет считывать файл построчно, пока недостигнет конца файла
 While not eof(F) do  
  Begin
   ReadLn(f,s);
   //Например отсеим строки, которые больше 20 символов
   If Length(s)>=20 then ListBox1.Items.Add(s);
  End;

 CloseFile(f);
End;
__________________
Я бы изменил мир, но бог исходников не дает!

Последний раз редактировалось Жендос, 11.06.2008 в 00:18.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:20.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025