Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.27;
Скачать: CL | DM;

Вниз

работа с текстовым файлом   Найти похожие ветки 

 
susergey   (2006-08-05 17:45) [0]

Мастера, помогите разобраться.
на форме есть поле Edit  в него нелбходимо вводить цифры для поиска в текстовом файле. Я создал переменную и присвоил ей значение Edit.Text. Отрываю файл для поиска, сравниваю переменную из него с созданной, но  поиск не выполняется.


 
Zeqfreed ©   (2006-08-05 17:54) [1]

> [0] susergey   (05.08.06 17:45)

У тебя ошибка в коде.


 
susergey   (2006-08-05 18:00) [2]

Вот код

procedure TForm1.BttnFindClick(Sender: TObject);
  var
   F: TextFile;
   Path: String;
   DistrNumber: String;
   Client: String;
   Network: String;
   RegToEnd: String;
   Status: String;
   VariantSystem: String;
   DistrType: String;
   DataOfReg: String;
   UsHost: String;
   fName: String;
   FindName: String;
   NDistr: String;

   begin
     Path := ExtractFilePath(ParamStr(0));
     if CmbBoxBase.Text = "Проф" then
     FindName := Path + "law.txt";
     AssignFile (F, FindName);
     fName := FindName;

   {$I-}
     Reset(f);
   {I+}
 
  if IOResult <> 0 then begin
    MessageDlg("Ошибка доступа к файлу "+ fName, mtError,[mbOk],0);
    Exit;
  end;

  while not EOF(f) do begin
    Readln(f, DistrNumber, VariantSystem, DistrType, Network, UsHost,
           RegToEnd, Status, DataOfReg, Client);
         NDistr := EdtNumDistr.Text;

    if (DistrNumber = NDistr)  then begin
    MemOutput.Lines.Add(DistrNumber);
    end
    else begin
     MemOutput.Lines.Add("not found");
       end;
  end;
  CloseFile(F);
end;


 
Zeqfreed ©   (2006-08-05 18:09) [3]

   Readln(f, DistrNumber, VariantSystem, DistrType, Network, UsHost,
          RegToEnd, Status, DataOfReg, Client);


После этого у тебя DistrNumber содержит целиком первую строку файла, а остальные переменные остаются пустыми. Каков формат файла?


 
susergey   (2006-08-05 18:14) [4]

Сделал вместо
Readln(f, DistrNumber, VariantSystem, DistrType, Network, UsHost,
         RegToEnd, Status, DataOfReg, Client);

Read (f, DistrNumber, VariantSystem, DistrType, Network, UsHost,
         RegToEnd, Status, DataOfReg, Client);
Результат тот же


 
Zeqfreed ©   (2006-08-05 18:21) [5]

> [4] susergey   (05.08.06 18:14)

Правильно. Надо не делать, а думать и только потом делать :) Каков формат файла?


 
susergey   (2006-08-05 18:23) [6]

Да-к дело в том, что изначально было Read, файл текстовый.


 
Zeqfreed ©   (2006-08-05 18:26) [7]

> [6] susergey   (05.08.06 18:23)

Я вижу что файл текстовый. Только это его тип. Я спрашиваю о том как данные записаны в этом файле и что ты ожидаешь получить выполняя данный код.


 
susergey   (2006-08-05 18:30) [8]

Я кажется понял, в чем ошибка
 2876    BaseName                3       26.04.0000   РТ-Софт

В начале строки есть пробелы, если их удалить, то может он заработает.


 
Zeqfreed ©   (2006-08-05 18:45) [9]

> [9] susergey   (05.08.06 18:30)

Если удалить пробелы, то ничего не изменится. Я же сказал, что при выполнении этого кода в DistrNumber окажется вся строка. Тебе необходимо её будет проанализировать и выбрать нужное значение. Или, если это число имеет фиксированное кол-во знаков, то можно его просто считать.


 
Anatoly Podgoretsky ©   (2006-08-05 18:51) [10]

Типов переменных мы никогда не узнаем?


 
GeLLeR ©   (2006-08-06 00:50) [11]


> У тебя ошибка в коде.

В многострадальной 17-ой строке???


 
Германн ©   (2006-08-06 01:01) [12]


> GeLLeR ©   (06.08.06 00:50) [11]
>
>
> > У тебя ошибка в коде.
>
> В многострадальной 17-ой строке???
>

Нет у него ошибки "в 17-ой строке". Есть полное непонимание что, чего, когда, куда, зачем и т.д. и т.п.



Страницы: 1 вся ветка

Текущий архив: 2006.08.27;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.036 c
1-1152854018
AlexeyT
2006-07-14 09:13
2006.08.27
Библиотека RegEx с поиском в файлах?


1-1152773900
Ярослав
2006-07-13 10:58
2006.08.27
Распаковка&amp;упаковка псевдо-архива


15-1154517741
KygECHuK
2006-08-02 15:22
2006.08.27
dcc32


2-1155116069
DelphiLexx
2006-08-09 13:34
2006.08.27
Скопировать все данные из TRxMemoryData в TFIBDataSet


15-1154510916
SPeller
2006-08-02 13:28
2006.08.27
Глюк IE. Помогите, кто чем может