Операции над файлами. Язык программирования BASIC
Операции над файлами Открытие файлаЧтение и запись обрабатываемых данныхЗакрытие файла
Открытие файла OPEN имя_файла FOR режим AS # номер файлаРежимы определяющие доступ к данным файла:INPUT – это режим чтения информации из файла.OUTPUT – режим записи информации в файлAPPEND – режим добавления информации в файл.
Рассмотрим пример записи в файл:OPEN “capitalist.dat” FOR OUTPUT AS #1FOR x=1 TO 5INPUT “введите название столицы”; F$PRINT #1, F$NEXT xCLOSE #1END
В результате работы программы мы получаем: Введите название столицы? МОСКВАВведите название столицы? КИЕВВведите название столицы? ТАЛЛИНВведите название столицы? РИГАВведите название столицы? МИНСК
Пример 1.Создание базы данных автомобилей. CLSINPUT “введите имя файла”;F$OPEN F$ FOR OUTPUT AS #1DOInput “марка автомобиля? (Для окончания введите QWE)”;M$IF UCASE$(M$)=“QWE” THEN 1
INPUT "номер автомобиля?";N$INPUT "цвет автомобиля?";С$INPUT "год производства автомобиля?";G$INPUT "продажная цена автомобиля?";S$PRINT #1,M$, N$, C$, G$, S$LOOP1: CLOSE #1PRINT "файл сформирован"
Осуществляется аналогично записи, но вместо режима OUTPUT используется режим INPUT.Прочитаем занесенные нами данные из файла avto.dat
CLSINPUT "введите имя файла";F$OPEN F$ FOR INPUT AS #1PRINT "База данных автомобилей на 17 декабря 2007 года"I=1DOPRINT "вывести данные об";I;"автомобиле?"INPUT "Для окончания нажмите QWE, для продолжения ";M$IF UCASE$(M$)="QWE" THEN 1INPUT #1, M$,N$,C$,G$,S$I=I+1LOOP UNTIL EOF(1)1: CLOSE #1PRINT "файл закрыт" Оператор LOOP UNTIL EOF(1) означает, что считывание ведется до тех пор, пока не будет обнаружен символ конца файла, а в скобках указан номер открытого файла.
Изменение данных в файле Для изменения какой-либо записи, удаления старых или добавления новых данных в последовательном файле необходимо открыть два файла: подлежащий изменению и новый, в котором создается обновленная версия исходного файла.
Приведенная ниже программа в файле avto.dat изменяет "МОСКВИЧ" на "МЕРСЕДЕС" OPEN "avto.dat" FOR INPUT AS #1OPEN "avto2.dat" FOR OUTPUT AS #2FOR I=1 TO 5INPUT #1,M$, N$, C$, G4, S$IF UCASE$ (M$)="МОСКВИЧ" THEN M$="МЕРСЕДЕС"PRINT #2, M$, N$, C$, G$, S$NEXT ICLOSE 1,2KILL "avto.dat"NAME "avto2.dat" AS "avto.dat"END
Добавление данных в файл Указание FOR APPEND в операторе OPEN подготавливает файл для вывода данных и смещает указатель на конец файла. Последующие операторы приписывают новую информацию к уже имеющейся. В предложенной далее программе в файл данных об автомобилях добавляются сведения о двух новых поступлениях.
CLSINPUT “введите имя файла”;F$OPEN F$ FOR APPEND AS #1DOInput “марка автомобиля? (Для окончания введите QWE)”;M$IF UCASE$(M$)=“QWE” THEN 1