КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Добавление данных в файл
Изменения данных в файле Чтение из файла Чтение из файла производится аналогично записи, но — вместо режима output используется режим input. Прочитаем занесенные нами данные из файла avto.dat. REM Программа чтения файла данных об автомобилях CLS INPUT " Введите имя файла"; F$ ' Открытие файла OPEN F$ FOR INPUT AS #1 PRINT "База данных автомобилей на 17 декабря 2000 года" I=1 DO PRINT "Вывести данные об"; I; "автомобиле?" INPUT "Для окончания введите QWE, для продолжения -<Enter>"; M$ IF UCASE$(M$)="QWE" OR UCASE$(М$)="ЙЦУ" THEN 1 INPUT #1, M$, N$, C$, G$, S$ PRINT M$, N$, C$, G$, S$ I=I+1 LOOP UNTIL EOF(1) ' Закрытие файла 1: close #1 PRINT "Файл закрыт" Оператор loop until eof(1). Означает, что считывание ведется до тех пор, пока не будет обнаружен символ конца файла (end of file), а в скобках указан номер открытого файла. Для изменения какой-либо записи, удаления старых или добавления новых данных в последовательном файле необходимо открыть два файла: подлежащий изменению и новый, в котором создается обновленная версия исходного файла. Старый файл в дальнейшем можно удалить. Приведенная ниже программа в файле avto.dat изменяет "МОСКВИЧ" на "МЕРСЕДЕС". В первых строках открываются исходный файл avto.dat и новый файл avto2.dat, сначала пустой. Очередная запись считывается из файла avto.dat и, при условии, что это не "МОСКВИЧ", переписывается без изменения в новый файл. Если же встречается значение "МОСКВИЧ", то оно заменяется на "МЕРСЕДЕС" путем присваивания нового значения переменной м$. В следующей. Строке данное значение попадает в выходной файл. После того как весь входной файл просмотрен, оба файла закрываются. OPEN "avto.dat" FOR INPUT AS #1 OPEN "avto2.dat" FOR OUTPUT AS #2 FOR i=1 TO 5 INPUT #1, M$, N$, C$, G$, S$ IF UCASE$(M$)-"МОСКВИЧ" THEN М$-"МЕРСЕДЕС" PRINT 12, M$, N$, C$, G$, S$ NEXT i CLOSE 1, 2 KILL "avto.dat" NAME "avto2.dat" AS "avto.dat" END Заключительный этап — удаление исходного и переименование нового файла, которому придается прежнее имя, что обеспечивает и в дальнейшем наличие на дискете файла avto.dat. Указание for append в операторе open подготавливает файл для вывода данных и смещает указатель на конец файла. Последующие операторы приписывают новую информацию к уже имеющейся. В предложенной далее программе в файл данных об автомобилях добавляются сведения о двух новых поступлениях. REM Программа создания файла данных об автомобилях CLS INPUT " Введите имя файла"; F$ REM Открытие файла OPEN F$ FOR APPEND AS 1 DO INPUT "Марка автомобиля? (Для окончания работы введите QWE.); М$ IF UCASE$(M$)="QWE" OR UCASE$(М$)="ЙЦУ" THEN 1 INPUT "Номер автомобиля?"; N$ INPUT "Цвет автомобиля?"; С$ INPUT "Год производства автомобиля?"; G$ INPUT "Продажная цена автомобиля?"; S$ WRITE #1, М$, N$, C$, G$, S$ LOOP REM Закрытие файла 1 CLOSE #1 PRINT "Файл дополнен"'
Дата добавления: 2017-02-01; Просмотров: 59; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |