0 / 0 / 0
Регистрация: 30.05.2010
Сообщений: 4
1

Поиск в текстовом файле

30.05.2010, 18:43. Показов 7080. Ответов 6
Метки нет (Все метки)

В текстовом файле поместить информацию о писателях и их произведениях (20…30 наименований), например:
Пушкин #Евгений Онегин
Тургенев #Накануне
Пушкин #Медный всадник
Написать программу, которая читает содержимое файла и находит следующую информацию:
По заданному имени автора выводит все его произведения;
По заданному названию произведения выводит имя автора;
Выводит начинающиеся с заданной буквы фамилии всех авторов, имеющихся в файле.

Вот что пока есть:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm1.Button1Click(Sender: TObject);
begin
assignfile(f, 'base.txt');
reset(f);
while not Eof(f) do
  begin
  ReadLn(f,s);
   for i:=1 to length(s) do
begin
if s[i]<>'#' then
b[i]:=s[i]
else break;
end;
if edit1.text=b then label4.caption:=s;
 
 
                end;
 
     CloseFile(f);
end;
end.
выдаёт ошибку, не могу разобраться в чём
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2010, 18:43
Ответы с готовыми решениями:

Поиск в текстовом файле
Подскажите пожалуйста, как сделать поиск слова в текстовом файле, а потом вывести всю строку, где...

Поиск в текстовом файле
Здравствуйте! Подскажите, как мне осуществить поиск по файлу строк между двумя строками? Например:...

Поиск в текстовом файле
Имеется текстовый файл (файл.txt) Каждая строка (количество строк не известно) состоит из 2х букв...

Поиск слов в текстовом файле
Всем привет! Вопрос следующий: есть текстовый файл большого размера (до 400Мб), необходимо каждые...

6
0 / 0 / 0
Регистрация: 30.05.2010
Сообщений: 4
31.05.2010, 19:31  [ТС] 2
Ап, помогите плз, мне завтра зачёт сдаваь, а я на этом застопорился(((
0
902 / 663 / 132
Регистрация: 01.03.2010
Сообщений: 1,243
31.05.2010, 20:46 3
Turion,
Дай исходный текстовой файл
1
0 / 0 / 0
Регистрация: 30.05.2010
Сообщений: 4
31.05.2010, 21:00  [ТС] 4
Вот
0
902 / 663 / 132
Регистрация: 01.03.2010
Сообщений: 1,243
31.05.2010, 21:07 5
Turion,
Не понял, это результат поиска или исходный файл? Если исходный файл, то там все уже найдено.
Чего требуется?
1
902 / 663 / 132
Регистрация: 01.03.2010
Сообщений: 1,243
31.05.2010, 22:13 6
Turion,
Вот вариант. В Combobox1 выбираем один из трех вариантов поиска.
Поисковое слово (или предложение) вводим в Edit1 и нажимает Button1.

3-й способ поиска доделай сам.

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
 
procedure TForm1.FormCreate(Sender: TObject);
begin
memo1.Lines.LoadFromFile('c:\base.txt');  {или другой путь к файлу base.txt}
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
str: String;
begin
memo2.Clear;{очищаем мемо}
 
  Case Combobox1.ItemIndex of
  0: {выбрано - Произведение по имени Автора}
    begin
       memo2.Lines.Add('Автор - '+Edit1.Text );
      for I:=0 to memo1.Lines.Count-1 do
      begin
        str:=memo1.Lines.Strings[i];
        if Pos(Edit1.Text,str)<>0 then {ищем совпадение по автору}
           begin
            Delete(str,1,pos('#',str)); {удаляем  из строки все, что до знака '#' }
            memo2.Lines.Add(str);
           end;
      end;
    end;
   1:{выбрано - По названию произведения вывести Автора}
     begin
        memo2.Lines.Add('Произведение - '+Edit1.Text );
       for I:=0 to memo1.Lines.Count-1 do
       begin
        str:=memo1.Lines.Strings[i];
        if Pos(Edit1.Text,str)<>0 then {ищем  автора совпадение по произведению}
           begin
             str:=copy(str,1,Pos('#',str)-1); {пишем содержимое строки str от первого знака до знака #}
             memo2.Lines.Add(str);
           end;
       end;
     end;
 
   2: {поиск по начальным буквам автора аналогичен способу 0. Можно только еще ввести разбиение по авторам};
 
   end;
 end;
end.
можно файл взять за основу
1
Вложения
Тип файла: rar Поиск в тексте по автору и произведению.rar (172.2 Кб, 205 просмотров)
0 / 0 / 0
Регистрация: 30.05.2010
Сообщений: 4
31.05.2010, 22:31  [ТС] 7
Спасибо!!!
Буду разбираться с 3)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.05.2010, 22:31

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Поиск данных в текстовом файле
Здравствуйте, помогите пожалуйста! Есть текстовый файл в котором указываются данные учащихся:...

Поиск строки в текстовом файле
как правильно написать программу для поиска строки,например цифр если она записана в txt файле? ...

Поиск значений в текстовом файле
Добрый день. Имеется текстовый файл вида: 22.10.2019;1;158;1000,50 22.10.2019;2;160;600,07...

Поиск слов в текстовом файле
Всем привет. Помогите пожалуйста, нужно сделать программу-словарь. То есть я ввожу, например, слово...

Поиск в текстовом файле, подскажите
Здравствуйте, ВСЕ!! Есть текстовый файл (цифры + текст) вида &quot;ававава еее 12345 привет 567890...

Поиск слов в текстовом файле
Всем привет. Пишу уже не первый раз с просьбой. Вот задача: Дан текстовый файл f. Найти в нем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.