162____________________________________________
сами, прочитав соответствующий раздел неформального описания языка и написав пару программ. Записать информацию в файл несложно. Но как убедиться в том, что ваша программа записала в файл информацию именно так как вы хотели? Не научившись читать вы можете стать персонажем модификации известного анекдота ("программист не читатель, программист — писатель!"). Впрочем, если вы настаиваете на примере программы записи в файл, можете попробовать нижеследующий пример:
DATA . . . CLS
OPEN "confess, tact" FOR BINARY AS #1 'открытие файла FOR i% = 1 TO 527 'начало цикла записи READ j% 'чтение исходных данных IF j%<0 THEN j%=-j% ELSE j%=256-j% 'дешифровка данных PUT #1, i%, CHR$(j%) 'запись байта NEXT i% 'конец цикла записи CLOSE #1 'закрытие файла
Числовые данные для этого примера вы должны взять из «Приложений» (файл CONFESS . DAT) и записать их вместо многоточия. Для уменьшения размеров текста с исходными данными эти данные зашифрованы. Условный оператор в цикле производит их дешифровку. Вы можете прочесть полученный файл при помощи текстового редактора и в случае достаточно малого количества ошибок переноса данных из книги в программу узнаете "страшную тайну" об авторе первоначальной идеи этого самоучителя (не забудьте о кодовой странице 866!).
В результате выполнения всех заданий восьмого занятия вы ознакомились не только с программированием чтения файла и записи в файл. Вы также узнали о кодировании символов, применяемом для вывода текстовой информации на дисплей. Полезным уроком в этом занятии является также опыт расшифровки содержимого файла по минимуму информации о назначении этого файла (ну и, конечно, на основании здравого смысла).
4.9. ВЗАИМОДЕЙСТВИЕ С ОПЕРАЦИОННОЙ СИСТЕМОЙ.
В предыдущем занятии вы уже изучили программирование взаимодействия с операционной системой MS DOS в части чтения и записи файлов. Кроме этого QBasic предоставляет некоторые возможности чтения или даже изменения параметров этой среды, исполнения некоторых команд MS DOS и взаимодействия с другими программами, запускаемыми в этой среде. При помощи однострочной программы проверим какие параметры MS DOS нам доступны:
FOR i%=l TO 10: PRINT ENVIRON$(i%): NEXT i%
Оказывается их не так уж много:
COMSPEC указывает какой файл используется для обработки команд пользователя,