Информационно-образовательный сайт учителя информатики и ИКТ     вход :: регистрация
   

Информатика и информационно-коммуникационные технологии в школе

 
   

   28.03.2024г.

Добрый вечер!  

Разделы сайта
 
  Материалы к урокам информатики в 7-9 по ФГОС. Новые презентации. Тесты.
 
  Знакомство с программирование, визуальное программирование.
 
  Планы, конспекты, презентации, методические находки, дидактический материал к уроку
 
  Настройка и использование школьной компьютерной сети
 
  Краткий теоретический материал, который можно применять на уроке...
 
  Разные полезности, программы, инструкции, советы...
 
  Как сохранить здоровье на уроках информатики
 
  Примерные экзаменационные билеты и ответы
 
  Программы для скачивания...
 
  Правила для пользователей портала
 
  Компьютерное тестирование знаний. Наш проект. Cправочное online руководство по программе
 
 
Сервисы сайта
все новости...
поиск по статьям сайта...
вопросы, обсуждения, решаем проблемы вместе ...
отзывы, замечания, предложения...
проверить свои знания, пройдя тесты в режиме online...
образовательные сайты, друзья портала...
для связи с администратором портала
 
Внимание! Опрос!

Есть ли в Вашей школе новые учебники информатики?

Да
Нет
Частично


результаты

____________________

  Полная или частичная перепечатка каким бы то ни было способом материалов данного сайта допускается только с письменного согласия автора.
  При цитировании или ином использовании материалов ссылка на сайт www.klyaksa.net обязательна.

____________________
 
Наши проекты:

MyTestX - лего и удобно

 
 
Афоризм дня
Входи в себя без стука.

Ежи ЛЕЦ


Реклама:


 

Rambler's Top100

Рейтинг@Mail.ru
Яндекс цитирования
 
 

Начало » Конспекты школьника » Часть 1 » [Учимся программировать][Файлы]

Учимся программировать!
Конспекты школьника.

Работа с файлами.

Файлы широко применяются для решения различных задач. В них размещаются данные, предназначенные для длительного хранения. Каждому файлу присваивается уникальное имя, которое используется для обращения к нему. Использование файлов освобождает разработчика от хранения требуемых данных в тексте программы или многократном вводе их с клавиатуры, что само по себе весьма утомительно и приводит к появлению различных ошибок в программах. Гораздо удобнее ввести эту информацию один раз и сохранить ее в файле на диске. 

Имена файлов состоят из двух частей, разделяемых точкой: filename.ext (имя_файла.расширение) 
Имя файла может включать от 1 до 8 знаков, а соответствующее расширение - до трех знаков.

Имена файлов и расширения могут содержать следующие символы: 

A-Z 0-9 () {} @ # $ % ^ ! - _ ' / ~ 

Файлы можно создавать, переименовывать, стирать; производить операции считывания и записи.

Basic предлагает три различных способа сохранения и востребования информации с диска: последовательный, прямой и двоичный ввод/вывод файла. У каждого есть свои преимущества и недостатки.

Метод последовательных файлов - это способ прямого чтения и записи файлов. Команды последовательных файлов в Basic создают текстовые файлы: файлы ASCII-символов с парами "возврат каретки/перевод строки", разделяющими записи. Вероятно одной из основных причин использования последовательных файлов является степень их "переносимости" в другие программы, языки программирования и компьютеры. Они читаются программами подготовки текстов и редакторами, принимаются другими прикладными программами и могут посылаться через серийные порты на другие компьютеры. 

В основе последовательных файлов лежит сама простота: пишите в них так, словно они - экран, и читайте с них так, словно они - клавиатура. 

Создание последовательного файла:

1. ОТКРЫТЬ файл в режиме последовательного ВВОДА. Для создания файла необходимо использовать оператор OPEN.

В последовательных файлах есть два пути подготовки файла к выводу:

OUTPUT (ВЫВОД): Если файл не существует- создается новый файл. Если файл уже существует, его содержание уничтожается, а сам файл рассматривается как новый. 

APPEND (ДОБАВИТЬ В КОНЕЦ): Если файл не существует- создается новый файл. Если файл уже существует, любые данные дописываются в конец этого файла.

2. Ввод данных в файл. Используйте WRITE# PRINT# или PRINT#USING для записи данных в последовательный файл. 

3. ЗАКРЫТИЕ файла. Оператор CLOSE закрывает файловую переменную после завершения всех операций ввода/вывода. 

Для чтения последовательного файла: 

1. ОТКРЫТЬ файл в режиме последовательного ВВОДА. Подготовить файл для считывания. 

2. Считывать данные с файла. Использовать операторы INPUT#, INPUT$, или LINE INPUT#

3. ЗАКРЫТЬ файл. Оператор CLOSE закрывает файловую переменную после выполнения всех операций ввода/вывода.

Недостаток последовательных файлов в том, что возможен только последовательный доступ к данным.

Можно создавать последовательные файлы двух типов: 1 - последовательные файлы с разделенными полями, где все поля на каждой строке файла разделяются (ограничиваются) особыми символами, и 2- неразделенные последовательные файлы, когда каждый файл выглядит абсолютно одинаково и на экране, и на распечатке. Эти два типа файлов создаются с помощью операторов WRITE# и PRINT#. соответственно. Используйте INPUT#, INPUT$, или LINE INPUT# для обратного считывания информации с последовательного файла любого типа.

Пример 1: записать строку в файл, считать строку из файла.

REM Работа с файлами. Пример 1.
REM Запись в файл
OPEN "file01.dat" FOR OUTPUT AS #1
A$ = "Это наша текстовая строка"
PRINT #1, A$
CLOSE #1
REM Чтение из файла
OPEN "file01.dat" FOR INPUT AS #1
INPUT #1, B$
PRINT b$    'вывод на экран
CLOSE #1

В результате выполнения программы будет создан файл "file01.dat" и файл будет содержать строку Это наша текстовая строка. Затем файл будет открыт для чтения и из него будет прочитана и выведена на экран данная строка.

Пример 2. Напишем программу для записи в файл отметки ученика на уроке. В файле будет хранится следующая информация:

ФИО дата отметка
Иванов Иван 22 февраля 4
Петров Петя 3 марта 5
... ... ...

REM Работа с файлами. Пример 2.
REM Запись в файл
OPEN "journal.dat" FOR APPEND AS #1
INPUT "Введите ФИО", FIO$
INPUT "Введите дату", DAY$
INPUT "Введите отметку", MARK
WRITE #1, FIO$, DAY$, MARK
CLOSE #1
REM Чтение из файла
OPEN "journal.dat" FOR INPUT AS #1
INPUT #1, FIO$, DAY$, MARK
PRINT FIO$, DAY$, MARK    'вывод на экран
CLOSE #1

Эта программа будет создавать файл journal.dat, записывать введенные пользователем данные, а затем считывать из файла journal.dat данные и выводить их на экран. Но в данной версии программы из файла мы будем получать всегда первую строчку (порцию) данных. Исправим это. Будем использовать функцию EOF, проверяющую достигнут ли конец файла.

REM Работа с файлами. Пример 2_2.
REM Запись в файл
OPEN "journal.dat" FOR APPEND AS #1
INPUT "Введите ФИО", FIO$
INPUT "Введите дату", DAY$
INPUT "Введите отметку", MARK
WRITE #1, FIO$, DAY$, MARK
CLOSE #1
REM Чтение из файла
OPEN "journal.dat" FOR INPUT AS #1
DO WHILE NOT EOF(1)
INPUT #1, FIO$, DAY$, MARK
PRINT FIO$, DAY$, MARK    'вывод на экран
LOOP
CLOSE #1

Теперь программа выводит из файла все данные. 

Продолжим работу. Упростим задачу пользователя - дату будем получать с помощью функции DATE$, которая возвращает текущую дату в формате mm-dd-yyyy.

REM Работа с файлами. Пример 2_3.
REM Запись в файл
OPEN "journal.dat" FOR APPEND AS #1
INPUT "Введите ФИО", FIO$
INPUT "Введите отметку", MARK
WRITE #1, FIO$, DATE$, MARK
CLOSE #1
REM Чтение из файла
OPEN "journal.dat" FOR INPUT AS #1
DO WHILE NOT EOF(1)
INPUT #1, FIO$, DAY$, MARK
PRINT FIO$, DAY$, MARK    'вывод на экран
LOOP
CLOSE #1

 

Итак, что у нас получилось? Мы написали программу для заполнения и вывода на экран классного журнала (для простоты мы не стали разделять эти две части программы).  Данные журнала хранятся в файле на диске.

Результат работы программы:


Примечание: Кроме операторов для создания, считывания и записи файлов, Basic имеет средства для осуществления определенных DOS-подобных сервисных программ внутри программы. Оператор NAME переименовывает файлы, KILL - стирает файлы, MKDIR - создает каталоги, CHDIR - меняет текущий каталог, RMDIR - уничтожает каталоги. 

Примечание: рассмотрим еще два примера (назначение ясно из коментариев).

'Пример открыть файл, назначенный принтеру
OPEN "LPT1:" AS #1
'послать строку на принтер
PRINT# 1,"THIS IS A TEST" 
CLOSE# 1 'закрыть переменную файла

'открыть два разных файла
OPEN "CLOSEFIL.ONE" FOR AS #1
OPEN "CLOSEFIL.TWO" FOR AS #2
'вписать строку в каждый файл
PRINT# 1,"THIS IS A TEST"
PRINT# 2,"THIS IS A TEST"
'закрыть все файлы
CLOSE
END

предыдущий урок :: содержание :: следующий урок

 

 

 

 

 

 

 

 

 

 

[Добавить в избранное]

 
Рекомендуем:

MyTest

Компьютерное тестирование знаний учащихся, сертификация и аттестация сотрудников.
Деcять типов заданий, локальное и сетевое тестирование...
 
Узнать больше и скачать программу MyTestXPro...
 
Обсудить на форуме и принять участие в создании банка тестов...
 
Группа ВКонтакте:
vk.com/MyTestXPro


 
Реклама:
 
 

 
Реклама:
 
 


↑    

Дизайн, программирование и идея сайта Клякс@.net -bas- © 2004-2024г.

    ↑