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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2010, 16:55   #1
Deep-Minimal
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 20
По умолчанию Сохранение и загрузка.

Помогите пожалуйста разобраться с сохранением и загрузкой, чтобы создавались новые файлы с разными данными:

Код:
procedure karta(var z,c,x,ylica,dom,korp,kv,bol: string);
begin
clrscr;
Textcolor(white);Write('Имя: ');Textcolor(2);readln (z);
Textcolor(white);write('Фамилия: ');Textcolor(2);readln (c);
Textcolor(white);write('Отчество: ');Textcolor(2);readln (x);writeln;
Textcolor(white);writeln('Адрес прописки: ');writeln;
Textcolor(white);write('Улица: ');Textcolor(2);readln(ylica);
Textcolor(white);write('Дом: ');Textcolor(2);readln(dom);
Textcolor(white);write('Корпус: ');Textcolor(2);readln(korp);
Textcolor(white);write('Квартира: ');Textcolor(2);readln (kv);writeln;
Textcolor(white);writeln('История болезни:');Textcolor(2);readln (bol);
writeln;
textcolor(yellow);writeln('Нажмите любую клавишу');
end;

Последний раз редактировалось Deep-Minimal; 19.04.2010 в 18:20.
Deep-Minimal вне форума Ответить с цитированием
Старый 19.04.2010, 18:42   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Чего проще создать структуру и записывать или считывать с файла.
Что конкретно не получается?
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 19.04.2010, 19:02   #3
Deep-Minimal
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 20
По умолчанию

Если честно, то я не представляю как это сделать.
Вот сохранение и загрузку в *.txt формат я понимаю как делать, а вот как сохранить и потом загрузить "z,c,x,ylica,dom,korp,kv,bol" все вместе, я не знаю.
Deep-Minimal вне форума Ответить с цитированием
Старый 19.04.2010, 19:12   #4
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Щас попробую обьяснить! :D
Ну допустим структуры- это вообще мега понтовая штука , когда нужно сохранить много данных, относящихся к чему-то одному!
Вот у тебя данные о человеке, возьми и создай структуру
Код:
Type 
    Person  = record;
         z,c,x,ylica,dom,korp,kv,bol: string;
    end;
var
    Pers: Person;
    F: file of Person;
begin
    { Считывай данные через структуру}
     Textcolor(white);Write('Имя: ');Textcolor(2);readln (Pers.z);
Textcolor(white);write('Фамилия: ');Textcolor(2);readln (Pers.c);
Textcolor(white);write('Отчество: ');Textcolor(2);readln (Pers.x);writeln;
Textcolor(white);writeln('Адрес прописки: ');writeln;
Textcolor(white);write('Улица: ');Textcolor(2);readln(Pers.ylica);
Textcolor(white);write('Дом: ');Textcolor(2);readln(Pers.dom);
Textcolor(white);write('Корпус: ');Textcolor(2);readln(Pers.korp);
Textcolor(white);write('Квартира: ');Textcolor(2);readln (Pers.kv);writeln;
Textcolor(white);writeln('История болезни:');Textcolor(2);readln (Pers.bol);
{ Вот}
.........
{Потом Где-то сохранение лучше использовать типизированный файл}
Assign(f, filename);
Rewrite (f); {или если дополнить Append(f);}
Write (f, pers);
end.
P.S.: Это пример
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 19.04.2010, 19:29   #5
Deep-Minimal
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 20
По умолчанию

Спасибо тебе огромное, вот с сохранением я разобрался, а вот загрузка у меня хромает. Делал по аналогии, может быть не правильно:
Код:
function load (filename:string; var e:integer):boolean;
var f:file of person;
    i:integer;
begin
textbackground(blue);
window (2,3,79,24);
     assign(f,filename);
     {$I-}
     reset(f);
              if IoResult<>0 then begin
                 load:=false;exit
              end;
              e:=0;
              while not eof(f) do begin
               e:=e+1;
               read(f, pers);
              end;
     close(f);
     load:=true;
readkey;
end;

Код:
function fname:string;
var s:string;
begin
clrscr;
textcolor(white);
write('Имя Файла=');
textcolor(2);readln(s);
fname:=s
end;
Вот аналог, но я уже понял, что это не подойдет:
Код:
function load(fn:string;var t:tabl;var n:integer):boolean;
var f:file of student;
    i:integer;
begin
     assign(f,fn);
     {$I-}
     reset(f);
              if IoResult<>0 then begin
                 load:=false;exit
              end;
              n:=0;
              while not eof(f) do begin
                    n:=n+1;
                    read(f,t[n]);
              end;
     close(f);
     load:=true
end;
Кстати, вот сама процедура сохранения:
Код:
procedure Save(filename:string);
var f:file of person;
begin
window (2,3,79,24);
     assign(f,filename);
     rewrite(f);
     write(f, pers);
     close(f);
     textcolor(12);
     write('Файл сохранен!');
     readkey;
readkey;
end;

Последний раз редактировалось Deep-Minimal; 19.04.2010 в 19:36.
Deep-Minimal вне форума Ответить с цитированием
Старый 19.04.2010, 19:33   #6
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

А что конкретно не работает?
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 19.04.2010, 19:43   #7
Deep-Minimal
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Hacker19_90 Посмотреть сообщение
А что конкретно не работает?
Сохранение происходит успешно, создается файл с названием. А вот после выполнения функции загрузки, всё обнуляется т.е. при выводе "z,c,x,ylica,dom,korp,kv,bol" ничего нет.
Deep-Minimal вне форума Ответить с цитированием
Старый 19.04.2010, 19:48   #8
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

А как массив записей обьявил?
read(f,t[n]);
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 19.04.2010, 20:05   #9
Deep-Minimal
Пользователь
 
Регистрация: 29.06.2009
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Hacker19_90 Посмотреть сообщение
А как массив записей обьявил?
read(f,t[n]);

Код:
   Type
    Person  = record
    z,c,x,ylica,dom,korp,kv,bol: string;
    end;
    tabl = array [1..30] of person;
Код:
function load (filename:string; var e:integer; t:tabl):boolean;
var f:file of person;
    i:integer;
begin
textbackground(blue);
window (2,3,79,24);
     assign(f,filename);
     {$I-}
     reset(f);
              if IoResult<>0 then begin
                 load:=false;exit
              end;

              while not eof(f) do begin
                    e:=e+1;
                    read(f, t[e]);
              end;
     close(f);
     load:=true;
readkey;
end;
Сейчас разбираюсь.
Deep-Minimal вне форума Ответить с цитированием
Старый 19.04.2010, 20:10   #10
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Кинь весь код пожалуйста, а то не как не въеду!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сохранение\загрузка в компоненте StringGrid Lorden Помощь студентам 1 07.12.2009 17:11
Загрузка/сохранение рисунков Marsik Помощь студентам 20 20.11.2008 18:09
Загрузка и сохранение в файл rainbow Общие вопросы Delphi 16 27.09.2008 11:35
HRGN сохранение-загрузка? Comer_Jus Общие вопросы Delphi 5 21.05.2008 20:12
Сохранение и загрузка информации Slash Общие вопросы Delphi 9 04.02.2007 22:01