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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2011, 17:05   #1
triple A
 
Регистрация: 14.04.2011
Сообщений: 7
Вопрос Turbo Pascal - при чтении типизированного файла #100 Disk read error

помогите,
Код:
Procedure punkt2;
type comp=record
marka:string;
end;
myfile=file of comp;
var f1:myfile; i,n:integer; c1:comp;
begin
clrscr;
assign(f1,'c:\kyrs\grrart.pas');
reset(f1);
while not eof(f1)do
begin
read(f1,c1);
writeln(c1.marka);
end;
close(f1);


     readln;
end;
ошыбка #100 Disk read error
что я не так делаю?

Последний раз редактировалось Stilet; 16.05.2011 в 18:19.
triple A вне форума Ответить с цитированием
Старый 16.05.2011, 18:20   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А доступ в ту папку вообще есть? Файл такой создан?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.05.2011, 18:41   #3
triple A
 
Регистрация: 14.04.2011
Сообщений: 7
По умолчанию

да все есть. я уже менял путь, но эта ошыбка не изчезает(
triple A вне форума Ответить с цитированием
Старый 16.05.2011, 18:55   #4
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Здравствуйте
Может у Вас пустой файл 'c:\kyrs\grrart.pas'?
До свидания
OlegVE вне форума Ответить с цитированием
Старый 16.05.2011, 19:14   #5
triple A
 
Регистрация: 14.04.2011
Сообщений: 7
По умолчанию

да нет, я же говорю, с файлом все норм. но оно не работает(
triple A вне форума Ответить с цитированием
Старый 16.05.2011, 19:36   #6
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Может Вы свой файл открываете из двух разных мест одновременно? Вы его закрыли после записи?
OlegVE вне форума Ответить с цитированием
Старый 16.05.2011, 21:01   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

проверил я программу.
Проблема в том, что читаемый файл НЕ ЯВЛЯЕТСЯ файлом
myfile=file of comp;

TC:
возьмите такой код:
Код:
Procedure punkt2;
type comp=record
marka:string;
end;
myfile=file of comp;
var f1:myfile; i,n:integer; c1:comp;
begin
  clrscr;
  assign(f1,'c:\kyrs\grrart.pas');
  reset(f1);
  {while not eof(f1)do }
  begin
    read(f1,c1);
    writeln(c1.marka);
  end;
  close(f1);
  readln;
end;
посмотрите, что выдал writeln(c1.marka);
и попытайтесь понять, почему так выдалось...

p.s. Паскаль, как ни странно - делает ровно то, что Вы запрограммировали (а не то, что бы Вам хотелось...)
для чтения подобного файла файл должен иметь СТРОГО ЗАДАННЫЙ ТИП!!!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.05.2011, 21:05   #8
Антон Лысенко
Форумчанин
 
Регистрация: 15.12.2010
Сообщений: 181
По умолчанию

Извините, вопрос не в тему: Может я чем-то и помогу.
Код:
marka:string;
в Паскале строка вроде же размером в 2GB? может попробовать написать так
Код:
marka:string[100];
Антон Лысенко вне форума Ответить с цитированием
Старый 16.05.2011, 21:56   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
в Паскале строка вроде же размером в 2GB? может попробовать написать так
в Паскале? Нет. Строка может иметь максимум 255 символов.
В Delphi - зависит от компилятора (и от настроек).
AnsiString/WideString (это по умолчанию String в Delphi) - ДА, 2 ГБ.


Цитата:
может попробовать написать так
Код:
marka:string[100];
это всё равно не поможет, если читаемый файл не будет состоять из элементов comp получите ТУ ЖЕ САМУЮ ошибку!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 16.05.2011, 22:38   #10
Антон Лысенко
Форумчанин
 
Регистрация: 15.12.2010
Сообщений: 181
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в Паскале? Нет. Строка может иметь максимум 255 символов.
В Delphi - зависит от компилятора (и от настроек).
AnsiString/WideString (это по умолчанию String в Delphi) - ДА, 2 ГБ.



это всё равно не поможет, если читаемый файл не будет состоять из элементов comp получите ТУ ЖЕ САМУЮ ошибку!
Понял. Спасибо за новую информацию)))
Антон Лысенко вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кодировка при чтении из файла _-Re@l-_ Общие вопросы .NET 2 21.11.2010 20:12
Ошибка при чтении из файла alex_alpha Общие вопросы C/C++ 5 08.08.2010 20:28
Ошибка: Disk read error freewix Паскаль, Turbo Pascal, PascalABC.NET 0 06.06.2010 09:23
ошибка при чтении файла ongleb Общие вопросы C/C++ 17 30.07.2009 13:48
Проблема при чтении из файла Satorin Общие вопросы Delphi 2 17.12.2008 11:32