Доброго всем времени суток. У меня есть вопросик я тут програмку одну делаю не подскажите ли что в ней на данный момент не сходится. Пишет (Файл, не открыт для входа). В общем я хотел упростить себе задачу загружая текты из файла, ато уж слишком много набирать. Вот код. Зарание всем благодарен.
Код
var a:string;b:string; F1:TEXT; begin a:=('типа лекции'); assign(f1,'c:\7_9.txt'); reset(f1); close(f1); readln(f1); writeln(f1); writeln(a); writeln('Для завершения работы приложения нажмите Enter'); readln; end.
Программка по идее простинькая но чет по лекциям у меня не прет.
Гость
10.11.2006 5:22
Пожалуйста извениете за"Фыйл"
Bokul
10.11.2006 5:33
var a:string;b:string; F1:TEXT; begin a:=('типа лекции'); assign(f1,'c:\7_9.txt'); reset(f1);
// для чего закрывать файл перед тем, когда ты еще не прочитала инфу? // Убери эту строчку. close(f1);
// если ты хочешь прочитать что-то файла, а не просто пропустить строку, // надо куда-то ее переписывать readln(f1); // readln(f1,a); a-тип строки
// тоже самое, ты же хочешь что-то записать в файл? Если да, то что? writeln(f1); // writeln(f1,b) b-текст, для записи в файл,b-тип строки
writeln(a); writeln('Для завершения работы приложения нажмите Enter'); close(f1); // а здесь уже наоборот надо закрыть, т.е. добавь эту строку readln; end.
Цитата
Пожалуйста извениете за"Фыйл"
Ты можешь выправить заголовок. Там снизу твоего сообщения есть кнопочка "изменить", жмешь на нее, а потом выбираешь "полное редактирование". Теперь ты можешь полностью редактировать твой пост, в том числе и заголовок.
М
Для этого автору надо как минимум зарегистрироваться volvo
Алена
10.11.2006 5:39
Только вот
readln(f1); writeln(f1);
к одному и тому же файлу применять нельзя. Текстовый файл может быть открыт или для чтения, или для записи (добавления)...
Bokul
10.11.2006 5:53
Цитата
к одному и тому же файлу применять нельзя.
Можно, только надо открыть его правильно: reset - для чтения append - для записи
Алена
10.11.2006 17:24
Ты не понял, имелось в виду, что если текстовый файл будет открыт для чтения, то записать в него без переоткрытия не удастся, будет ошибка... А в исходной программе нет переоткрытия между readln(f) и writeln(f)
hiv
10.11.2006 20:42
Цитата(Bokul @ 10.11.2006 1:53)
Можно, только надо открыть его правильно: reset - для чтения append - для записи
Немного уточню: reset - для чтения rewrite - для записи (стирает в файле все, что было до момента начала записи) append - для чтения и записи (при открытии курсор находится в конце файла) Дословно append - добавлять; прибавлять; прилагать что-л.
Вот куда надо было напривать автора, да и сейчас еще не поздно, загляни туда, автор и жизеь станет немного яснее
Алена
10.11.2006 20:46
Цитата
append - для чтения и записи
Пример ЧТЕНИЯ из файла, открытого через Append можно привести?
hiv
10.11.2006 21:08
Приношу свои извинения append(f); - работает только с текстовыми файлами var f:text; seek(f,0); - НЕ работает с текстовыми файлами. СМ. FAQ - там все есть
Гость
10.11.2006 21:56
Всем большёе спасибо. Щас зарегистрируюсь
N/V/K
10.11.2006 23:06
var a:string;b:string; F1:text; begin a:=('типа лекции'); assign(f1,'c:\7_9.txt'); reset(f1); readln(f1,b); writeln(f1); writeln('Нажмите Enter для завершения приложения'); close(f1); readln; end.
Ну я не знаю даже что сказать "Файл не открыт для вывода" что может быть не так подскажите.
volvo
11.11.2006 0:02
Цитата
что может быть не так подскажите.
Тебе же сказали, что из файла, открытого через Reset можно только ЧИТАТЬ, выводить в него данные не получится!
N/V/K
11.11.2006 2:08
Да мне не надо вводить данные мне надо вывести их на экран, а я такой любитель не грамотный не могу этого сделать.
klem4
11.11.2006 2:10
reset(f1); readln(f1,b); writeln(b); < ---- выводить то надо то что из файла прочитал
N/V/K
11.11.2006 2:18
Спасибо большёе, мне теперь осталось решить проблемы с кодировкой *.txt файла.
Может быть я задам дурацкий вопрос, но что надо сделать чтоб тыводился весь текст примерно 1200 строк вместо одной первой. Подскажите пожалйуста.
klem4
11.11.2006 2:22
Приведи полностью и точно свое задание.
А то чувствуется обсуждение этой пятикопеечной программы может растянуться еще постов на 20.
N/V/K
11.11.2006 2:33
Извени. Разработать обучающюю программу по изучениютемы "базы данных. Язык запросов SQL". Программа должна иметь встроенную проверку знаний и навыков(тест).
М
Очень сожержатнльно, пойди туда не знаю куда, купи то не знаю что и пластиковые стаканчики не забудь. Удачи. А начиналось все с чтения строки из файла ...
Ну хоть подскажи, как выводить крупные текстовые файлы на экран.
klem4
11.11.2006 2:43
Цитата
Ну хоть подскажи, как выводить крупные текстовые файлы на экран.
На сколько крупные ? 1200 строк ?
Так же как и не крупные. Читаешь последовательно строки из файла и выводишь их. Другое дело если длина строк в файле может превышать 255 символов, тогда выход либо переход на 32 бита (Delphi например), либо почитай тут про PChar.
Но что-то мне подсказывает что ты еще не разобрался как вообще в Паскале работать с файлами.
Ссылку на FAQ я давал выше.
N/V/K
11.11.2006 2:47
Спасибо!!!
N/V/K
11.11.2006 15:15
Прикольно, спасибо тебе Klem4 за инфу, с уважением N/V/K
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.