Я написала программу, в которой нужно открыть файл для чтения данных,а программа при запуске пишет что файл не найденю Подскажите пожалуйста в каком месте в программе нужно указывать путь к файлу?
Client
14.03.2008 20:31
Цитата
Я написала программу
Где?
-Марина-
15.03.2008 14:11
В смысле где? В Паскале.
Ozzя
15.03.2008 14:23
Марина, телепаты в командировке на Бетельгейзе. Предполагаю, что проблема в
program create_bfile;
var buf:array[1..4] of real;
f_in:text;
f_out:file;
i,k:integer;
name_in,name_out:string;
constbegin{$I-}
writeln('Введите имя входного файла '); readln(name_in);
assign(f_in,name_in);
reset(f_in);
if IOResult<>0thenbegin
writeln('Файл',name_in,'не найден'); exit end;
writeln('Введите имя выходного файла'); readln(name_out);
assign(f_out,name_out);
rewrite(f_out,sizeof(real)*4);
{$I-}
i:=0;
whilenot eof(f_in)dobegin
inc(i);
read(f_in,buf[i]);
if i=4thenbegin
blockwrite(f_out,buf,1); i:=0; end;
end;
if i<>0thenbeginfor k:=i+1to4do buf[k]:=0;
blockwrite(f_out,buf,1);
end;
close(f_in); close(f_out);
end.
М
Используем теги
Ozzя
15.03.2008 15:19
Файл с данными лежит в той же директории, что и программа?
-Марина-
15.03.2008 21:54
Да, в той же директории.
volvo
15.03.2008 22:12
Длина имени файла и того имени, что вводится пользователем не больше 8-ми символов? Турбо Паскаль работает с именами файлов в формате 8.3
-Марина-
15.03.2008 23:16
Нет, не больше. Имя состоит только из трёх букв.
volvo
15.03.2008 23:49
Блин, у меня почему-то ощущение, что я на экзамене, а ты - преподаватель. Ты ничего не путаешь? Тебе нужна помощь, или кому? Что, от тебя убудет, если ты напишешь, КАКИЕ имена ты используешь? Если ты напишешь, не ReadOnly ли случайно эти файлы?
Ну, как знаешь... Не хочешь сама себе помогать - дело твое...
andriano
16.03.2008 11:38
Марина, у тебя не совсем верно используются директивы {$I-}. Честно говоря, это очень сильнодействующее средство, которое вообще в обычных программах использовать не следует, но, почему-то, именно этот способ проверки наличия файла стал стандартом de facto. Первое: сделай в программе так:
и чтобы больше эти директивы нигде в коде не встречались, в противном случае они будут влиять не только на работу с файлом, но и вообще на весь ввод-вывод, что может существенно затруднить отладку.
И еще: попытайся писать, что ты делаешь, что ожидаешь получить, и что вместо этого получаешь. Иначе очень трудно догадаться, что же тебе нужно.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.