IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Запись в файл, чтение из файла
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской

Репутация: -  0  +


Написал функции записи в файл и чтения из файла
Запись:
Код

function f_save: word;
 var i, j: word; f_p: text;
 begin
   assign (f_p,'_!!!_.txt');
   rewrite (f_p);
  for i:=1 to a1 do
   begin
    for j:=1 to b1 do
    write (f_p,m1[i,j]:4:0);
    writeln;
   end;
    writeln;
  for i:=1 to a2 do
   begin
    for j:=1 to b2 do
    write (f_p,m2[i,j]:4:0);
    writeln;
   end;
    writeln;
  for i:=1 to a3 do
   begin
    for j:=1 to b3 do
    write (f_p,m3[i,j]:4:0);
    writeln;
   end;
    writeln;
  for i:=1 to a4 do
   begin
    for j:=1 to b4 do
    write (f_p,m4[i,j]:4:0);
    writeln;
   end;
    writeln;
   close (f_p);
   f_save:=0;
 end; {f_save}

Чтение:
Код

function f_read: word;
 var i, j: word; f_p: text; s: string;
 begin
   assign (f_p,'_!!!_.txt');
   reset (f_p);
   while not eof (f_p) do
   begin
     clrscr;
     readln (f_p, s);
     writeln (s);
   end;
   close(f_p);
   f_read:=0;
 end; {f_read}

Можно сделать так, что бы сохраненный массив читался нормально, как массив, а не просто символы считывались?
Сам делал по другому, но не выводится на экран.
Код

function f_read: word;
 var i, j: word; f_p: text; m1: massiv;
 begin
   assign (f_p,'_!!!_.txt');
   reset (f_p);
   while not eof (f_p) do
   begin
     clrscr;
     readln (f_p, m1[i,j]);
    for i:=1 to a1 do
     begin
     writeln;
     for j:=1 to b1 do
     writeln (m1[i,j]:4:0);
     readln;
     end;
   end;
   close(f_p);
   f_read:=0;
 end; {f_read}


А вот так только первое значение выводится.

Код

function f_read: word;
 var i, j: word; f_p: text; m1: massiv;
 begin
   assign (f_p,'_!!!_.txt');
   reset (f_p);
   while not eof (f_p) do
   begin
     clrscr;
     readln (f_p, m1[i,j]);
     writeln (m1[i,j]:4:0);
   end;
   close(f_p);
   f_read:=0;
 end; {f_read}

Всю программку прикрепил, может кто что подскажет.


Прикрепленные файлы
Прикрепленный файл  KURS2.PAS ( 16.16 килобайт ) Кол-во скачиваний: 291
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Сразу в глаза бросается стадо загадочных WriteLn'ов в f_save. Ты наверно хотел написать WriteLn(f_p). Может в этом дело?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Смотрю...
*****

Группа: Пользователи
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Может проще:

Код
var
 ...
 f_p: File of massiv;
 m1: massiv;
 ...
Begin
...
 Write(f_p,m1);    // Запись всего массива в файл "одним махом"
...
 Read(f_p,m1);    // Чтение всего массива из файла "одним махом"
...
End;


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


-
****

Группа: Пользователи
Сообщений: 480
Пол: Мужской

Репутация: -  4  +


А слабо одним махом в текстовый и из него??? smile.gif


--------------------
бб
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской

Репутация: -  0  +


Так сохраняется и загружается, вроде, но на экран выводится только 1 элемент массива, если с перечислением писать то нули.
Код

f_p: File of massiv;
m1, m2, m3, m4: massiv;
...
Begin
...
Write(f_p,m1);    // Запись всего массива в файл "одним махом"
...
Read(f_p,m1);    // Чтение всего массива из файла "одним махом"
...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 17:31
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name