Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Delphi] Поиск в текст файле 
:(
    Опции темы
GEK
Дата 22.5.2008, 08:33 (ссылка)  | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 17.5.2008

Репутация: -1
Всего: нет



В текстовом файле  F  найти строки содержащие в качестве фрагмета заданную строку!
Напишите пожалста текст программы в форме! Заранее спасибо! 

PM MAIL   Вверх
THandle
Дата 22.5.2008, 09:06 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Товарищ Гектор, хватит копировать темы, так Вам тем более не помогут.
PM   Вверх
ama_kid
Дата 22.5.2008, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 16
Всего: 95



Цитата(THandle @  22.5.2008,  09:06 Найти цитируемый пост)
так Вам тем более не помогут
согласен, явно выраженное стремление решить лабораторки\курсовую\экзамен чужими руками, не приложив ни капли усилий, не прибавляет желания помочь такому человеку...


--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
KasMP
Дата 22.5.2008, 09:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Завсегдатай
Сообщений: 586
Регистрация: 8.8.2006

Репутация: 1
Всего: 30



Цитата(ama_kid @  22.5.2008,  09:30 Найти цитируемый пост)
согласен, явно выраженное стремление решить лабораторки\курсовую\экзамен чужими руками, не приложив ни капли усилий, не прибавляет желания помочь такому человеку... 

А ты знаешь, как кириллицу из *.pas (т.е. из-под MSDOS) перенести сюда на форум (т.е. в Windows)?
PM MAIL   Вверх
Данкинг
Дата 22.5.2008, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Цитата(GEK @  22.5.2008,  09:33 Найти цитируемый пост)
В текстовом файле  F  найти строки содержащие в качестве фрагмета заданную строку!

Проход циклом по файлу (readln) и поиск нужного фрагмента функцией pos.

Цитата(KasMP @  22.5.2008,  10:34 Найти цитируемый пост)
А ты знаешь, как кириллицу из *.pas (т.е. из-под MSDOS) перенести сюда на форум (т.е. в Windows)? 

А зачем??


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
THandle
Дата 22.5.2008, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Цитата(ama_kid @  22.5.2008,  10:30 Найти цитируемый пост)
согласен, явно выраженное стремление решить лабораторки\курсовую\экзамен чужими руками, не приложив ни капли усилий, не прибавляет желания помочь такому человеку...


Самая большая проблема в том что человек еще к тому же копирует темы:
http://forum.vingrad.ru/forum/topic-212536.html

Если бы не было темы этой темы, я дал бы ему готовый код. А так желания что то совсем отпало.
PM   Вверх
KasMP
Дата 22.5.2008, 09:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Завсегдатай
Сообщений: 586
Регистрация: 8.8.2006

Репутация: 1
Всего: 30



Цитата(Данкинг @  22.5.2008,  09:38 Найти цитируемый пост)
А зачем?? 

Надо вот сюда smile .
PM MAIL   Вверх
ama_kid
Дата 22.5.2008, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


АСУТП-кодер
***


Профиль
Группа: Комодератор
Сообщений: 1460
Регистрация: 5.3.2007
Где: Москва

Репутация: 16
Всего: 95



Цитата(KasMP @  22.5.2008,  09:34 Найти цитируемый пост)
А ты знаешь, как кириллицу из *.pas (т.е. из-под MSDOS) перенести сюда на форум (т.е. в Windows)? 
Я открываю в Far'е, делаю всему тексту Ctrl+X, переключаю кодировку, делаю Ctrl+V - текст для переноса готов  smile 



--------------------
самурай без меча подобен самураю с мечом, но только без меча 
PM MAIL   Вверх
KasMP
Дата 22.5.2008, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Завсегдатай
Сообщений: 586
Регистрация: 8.8.2006

Репутация: 1
Всего: 30



Цитата(ama_kid @  22.5.2008,  09:53 Найти цитируемый пост)
Я открываю в Far'е, делаю всему тексту Ctrl+X, переключаю кодировку, делаю Ctrl+V - текст для переноса готов  smile

Спасибо большое smile smile!
Скачаю FAR и попробую smile  smile .
PM MAIL   Вверх
GEK
Дата 22.5.2008, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 17.5.2008

Репутация: -1
Всего: нет



Да согласен с копированием тем но вы лучше б помогли нежели надсмехаться надо мной поверте если бы я могла сама сделать я бы не просила ни кого"
Цитата

Если можешь помоги а не можешь не не лезь и не надсмехася без тебя помогут!

PM MAIL   Вверх
THandle
Дата 22.5.2008, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



Самый примитивный пример:

Код

program Project1;

{$APPTYPE CONSOLE}

var
  FStr : string;
  FileName : string;
  SStr : string;
  F : text;
begin
  writeln('Enter file name: ');
  readln(FileName);
  Assign(F, FileName);
  Reset(F);
  writeln('Enter string: ');
  readln(FStr);
  while not Eof(F) do
    begin
      readln(F, SStr);
      if pos(FStr, SStr) <> 0 then
        writeln(SStr);
    end;
  CloseFile(F);
  readln;
end.



GEK, и не копируй больше темы, желающих помогать это не прибавляет явно.
PM   Вверх
GEK
Дата 22.5.2008, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 17.5.2008

Репутация: -1
Всего: нет



THandle СПАСИБо большое копировать темы не буду больше только не пойму как  в форму перенести? smile 
PM MAIL   Вверх
THandle
Дата 22.5.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 30
Всего: 372



GEK, да формочку еще легче.

Вот например напишем функцию, название которой да я понять не могу(случайно клавиши так нажалисьsmile)))

Код

procedure GAS(const S, FileName : string; Strings : TStrings);
var
  F : text;
  SStr : string;
begin
  if ((FileName = '') or (not Assigned(Strings))) then
    exit;
  Assign(F, FileName);
  Reset(F);
  while not Eof(F) do
    begin
      readln(F, SStr);
      if pos(S, SStr) <> 0 then
        Strings.Add(SStr);
    end;
end;



Работу с файлами оставил стандартную, может в этом и состоит задание, хотя легче было бы использовать TStringList.

На форме следующие компоненты:

TMemo, TButton, 2xTEdit

По нажатию кнопки пишем следующее:
Код


procedure TForm1.Button1Click(Sender: TObject);
begin
  GAS(Edit1.Text, Edit2.Text, Memo1.Lines);
end;



Весь код выглядит так:
Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Edit1: TEdit;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure GAS(const S, FileName : string; Strings : TStrings);
var
  F : text;
  SStr : string;
begin
  if ((FileName = '') or (not Assigned(Strings))) then
    exit;
  Assign(F, FileName);
  Reset(F);
  while not Eof(F) do
    begin
      readln(F, SStr);
      if pos(S, SStr) <> 0 then
        Strings.Add(SStr);
    end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  GAS(Edit1.Text, Edit2.Text, Memo1.Lines);
end;

end.



В архиве находится сам проект, только лучше сам все воспроизведи, полезнее будет smile 

И еще:

Возьми почитай вот эту вот книгу:
http://www.delphilab.ru/content/view/17/46/

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  1.rar 6,11 Kb
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0856 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.