![]() |
|
#1
|
|||
|
|||
![]() Здравствуйте. Это кусок кода из бд на основе типизированных бинарных файлов. Когда я заполняю поля бд. затем сохраняю у меня в каталоге создается файл. А когда выполняется поиск при помощи этого кода выдается ShowMessage('Файл не найден') С 19 часов сижу не могу разобрать. Помогите)
Код:
procedure TMainForm.SpeedButton5Click(Sender: TObject); begin SetCurrentDir(ExtractFilePath(Application.ExeName)+'Абонент'); try if FileExists(Edit5.Text)=True then begin AssignFile(DAbonent,Edit5.Text); Reset(DAbonent); Read(DAbonent,Abonent); CloseFile(DAbonent); Edit2.Text:=Abonent.FIO; Edit3.Text:=Abonent.Adress; Edit4.Text:=Abonent.Telefon; Edit5.Text:=Abonent.Data; Memo1.Text:=Abonent.Spisok; end else ShowMessage('Файл не найден'); Except Exit; end; |
#2
|
||||
|
||||
![]() Особенно понравилась это:
Код:
SetCurrentDir(ExtractFilePath(Application.ExeName)+'Абонент'); if FileExists(Edit5.Text)=True Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
||||
|
||||
![]() А что в Edit5.Text находится в момент выполнения данного события?
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#4
|
||||
|
||||
![]() Наверняка имя загружаемого файла. Но слэш поставить это ещё догадаться нужно, а смена текущего каталога это вообще высший пилотаж.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#5
|
|||
|
|||
![]() В Edit5 загружаются данные со структуры, т.е здесь у меня записана дата выдачи типа string- я пока учусь мне так проще
|
#6
|
||||
|
||||
![]() Тогда что ты хочешь загрузить?
Цитата:
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#7
|
|||
|
|||
![]() Имя файла формируется из Edit2.Text
|
#8
|
||||
|
||||
![]() Хорошо, тогда попробуй так:
Код:
var St : String; begin St := GetCurrentDir(ParamStr(0)) + '\Абонент\' + Edit5.Text; if FileExists(St) then begin ... end else ShowMessage('Файл не найден'); Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#9
|
|||
|
|||
![]() нашел две ошибки надо Edit2.Text. имя файла это данные из Edit2.Text.
Код:
if FileExists(Edit5.Text)=True then begin AssignFile(DAbonent,Edit5.Text); |
#10
|
||||
|
||||
![]() А я разве так написал? Смотри внимательнее. И в этой строке:
Код:
FileExists(Edit5.Text)=True Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#11
|
|||
|
|||
![]() Цитата:
|
#12
|
||||
|
||||
![]() Очепятался
Код:
St := ExtractFileDir(ParamStr(0)) + '\Абонент\' + Edit2.Text; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#13
|
|||
|
|||
![]() здесь в Edit2.Text задается имя файла
Код:
procedure TMainForm.SpeedButton1Click(Sender: TObject); begin SetCurrentDir(ExtractFilePath(Application.ExeName)+'Абоненты'); Abonent.FIO:=Edit2.Text; Abonent.Adress:=Edit3.Text; Abonent.Telefon:=Edit4.Text; Abonent.Data:=Edit5.Text; Abonent.Spisok:=Memo1.Text; AssignFile(DAbonent,Edit2.Text); Rewrite(DAbonent); Write(DAbonent,Abonent); CloseFile(DAbonent); if FileExists(Edit2.Text)=True then ShowMessage('Запись сохранена'); |
#14
|
|||
|
|||
![]() Цитата:
ShowMessage'Файл не найден' |
#15
|
||||
|
||||
![]() Ух, утомил:
Код:
procedure TMainForm.SpeedButton5Click(Sender: TObject); var St : String; begin St := ExtractFileDir(ParamStr(0)) + '\Абонент\' + Edit5.Text; if FileExists(St) then begin AssignFile(DAbonent, St); try Reset(DAbonent); Read(DAbonent, Abonent); finally CloseFile(DAbonent); end; Edit2.Text := Abonent.FIO; Edit3.Text := Abonent.Adress; Edit4.Text := Abonent.Telefon; Edit5.Text := Abonent.Data; Memo1.Text := Abonent.Spisok; end else ShowMessage('Файл не найден'); end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |