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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2012, 00:11   #21
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

дозапись осуществляется не просто, а ОЧЕНЬ просто.

нужно всего навсего открыть файл, установить указатель на конец файла, потом можно писать новые записи.

примерно так:
Код:
..
  WriteLn('Введите, сколько записей хотите добавить:');
  Readln(n);

  assign (fp, 'D:\rez.dat'); 
  reset(fp);
  
  seek(fp, filesize(fp)); {установили указатель на конец файла - можно дописывать!}

  for i:=1 to n do begin
    writeln ('фамилия');
    readln (s.fio);
    writeln ('оценка по химии: ');
    readln (s.him);
    writeln ('оценка по математике: ');
    readln (s.mat);
    writeln ('оценка по информатике: ');
    readln (s.inf);
    write (fp,s); {дописали информацию в конец файла}
    
  end;

  close(fp); {не забываем закрывать файл!}
ну и ещё, аналогичные темы на форуме, где я давал решения:
http://www.programmersforum.ru/showp...38&postcount=5

http://www.programmersforum.ru/showp...6&postcount=10

http://www.programmersforum.ru/showp...09&postcount=6
Serge_Bliznykov вне форума Ответить с цитированием
Старый 27.03.2012, 18:42   #22
Naposaram
Пользователь
 
Регистрация: 22.11.2008
Сообщений: 52
Хорошо

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
дозапись осуществляется не просто, а ОЧЕНЬ просто.

нужно всего навсего открыть файл, установить указатель на конец файла, потом можно писать новые записи.

примерно так:
Код:
..
  WriteLn('Введите, сколько записей хотите добавить:');
  Readln(n);

  assign (fp, 'D:\rez.dat'); 
  reset(fp);
  
  seek(fp, filesize(fp)); {установили указатель на конец файла - можно дописывать!}

  for i:=1 to n do begin
    writeln ('фамилия');
    readln (s.fio);
    writeln ('оценка по химии: ');
    readln (s.him);
    writeln ('оценка по математике: ');
    readln (s.mat);
    writeln ('оценка по информатике: ');
    readln (s.inf);
    write (fp,s); {дописали информацию в конец файла}
    
  end;

  close(fp); {не забываем закрывать файл!}
Ооо... пасиба большое.... я так и делал только seek не там писал =D и думал че за фигня??? ну в принципе не так то и сложно была задачка на сколько я думал... не хватало просто просто примеров....

Всем спасибо кто не бросил и помог!!! =)
Naposaram вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Типизированные файлы. Чтение sz строки. Человек_Борща Общие вопросы Delphi 2 09.03.2012 21:26
Очень нужно сделать задачу в Delphi(Типизированные файлы. файлы записи) Vitalik1 Помощь студентам 1 16.12.2011 10:38
Чтение/запись объектов классов из/в бинарные файлы Гром Общие вопросы C/C++ 9 18.05.2010 22:20
Файлы: запись/чтение Proger_1 БД в Delphi 0 30.04.2010 00:36
VC++ файлы(чтение\запись) ("")(Э_Є)("") Общие вопросы C/C++ 3 16.06.2009 14:05