Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2013, 23:28   #1
MariaD
Пользователь
 
Аватар для MariaD
 
Регистрация: 10.01.2013
Сообщений: 56
Восклицание Файлы.Выдает ошибку [Delphi]

Создать файл f, содержащий сведения о веществах: название вещества, его удельный вес, проводимость (проводник, полупроводник, изолятор). С помощью другой программы выбрать из этого файла данные о проводниках и сохранить их в другом файле.

Данные заношу в мемо.файлы сохраняются и записываются. там где совершается проверка проводник ли выдает ошибку.



Код:
unit Unit3;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm3 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button3: TButton;
    Memo1: TMemo;
    Memo2: TMemo;
    Memo3: TMemo;
    Memo4: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

r=record
v:string[15];
u:integer;
p:string[15];
end;

Var
Form3: TForm3;
r1:r;
s:string;
i:integer;


implementation

uses Unit1;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
 var
 f1:file of r;
 f:textfile;

begin
Assignfile(f1,'f1');
Assignfile(f,'f.txt');
rewrite(f);
rewrite(f1);

For i:=1 to Memo1.Lines.Count-1 do begin
r1.v:=Memo1.Lines[i];
r1.u:=StrToInt(Memo2.Lines[i]);
r1.p:=Memo3.Lines[i];
Memo4.Lines.Add(r1.v + ' '+  IntToStr(r1.u)+' '+ r1.p);
Write(f1,r1);
Writeln(f,r1.v:10,r1.u:8,r1.p:10);
end;
Closefile(f1);
Closefile(f);
end;

procedure TForm3.Button3Click(Sender: TObject);
begin
Form3.Close;
Form1.Close;
end;

procedure TForm3.Button2Click(Sender: TObject);
 var
 f1:file of r;
 f:textfile;
begin
Assignfile(f1,'f1');
Assignfile(f,'g.txt');
Reset(f);
rewrite(f);
While not eof(f1) do begin
Read(f1,r1);

If r1.p = "проводник" then
Writeln(f,r1.v:10,r1.u:8,r1.p:10);
end;
 CloseFile(f);
 CloseFile(f1);
end;

end.
MariaD вне форума Ответить с цитированием
Старый 12.04.2013, 23:34   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Файл f1 не открыт
Цитата:
Код:
Reset(f);
rewrite(f);
While not eof(f1) do begin
eoln вне форума Ответить с цитированием
Старый 12.04.2013, 23:40   #3
MariaD
Пользователь
 
Аватар для MariaD
 
Регистрация: 10.01.2013
Сообщений: 56
По умолчанию

все равно ошибку выдает
MariaD вне форума Ответить с цитированием
Старый 12.04.2013, 23:53   #4
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Кавычки одинарные
Цитата:
"проводник"
eoln вне форума Ответить с цитированием
Старый 12.04.2013, 23:58   #5
MariaD
Пользователь
 
Аватар для MariaD
 
Регистрация: 10.01.2013
Сообщений: 56
По умолчанию

спасибо,заработало
MariaD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выдает ошибку Stream write error(delphi) KICK-BOXER Помощь студентам 2 06.04.2013 17:55
Delphi.Программа выдает ошибку "is not a valid integer value MariaD Помощь студентам 9 30.03.2013 17:45
готовый проект в delphi!почему выдает ошибку??? solisoul Помощь студентам 2 17.01.2012 06:50
Excel 2007 и Delphi 7 выдает ошибку. 4sense Общие вопросы Delphi 6 16.03.2010 23:42