- Работа с файлами в Visual Basic

Конспект урока «Работа с файлами в Visual Basic» по информатике

Урок: Работа с файлами в Visual Basic

Цель: Познакомить учащихся с возможностями записи в файл и считывания из файлов в Visual Basic. Развивать навыки работы с файлами. Воспитывать грамотных пользователей ПК.


I орг. момент (посадка, перекличка)


II Объяснение нового материала.

Иногда бывает нужно, чтобы после завершения работы программы, данные, созданные в оперативной памяти компьютера, не пропали а были записаны на диск. При запуске программы тогда можно воспользоваться уже имеющимися данными. Для этого необходимо уметь читать данные с диска и сохранять их на диске. Этими вопросами мы займемся в настоящем занятии.

В проекте Анимация предыдущего при копировании элемента Image1 мы получили элементы с именами Image1(0), Image1(1), Image1(2) и т.д. Такие элементы называются массивом. Предположим, что нам надо сформировать массив не элементов, а некоторого списка названий предметов. В случаях, когда информационный массив не очень велик, его можно формировать прямо в окне программы, но если массив большой, а в реальной жизни мы имеем дело именно с такими задачами, его целесообразно хранить на диске в отдельном файле. Когда это необходимо, данные из файла нужно уметь взять с помощью программы для использования, а полученные после обработки данные записать на диск в виде файла. Так можно, например, было бы не только распечатать свой массив названий предметов на форме, но и записать его на диск.

Рассмотрим основные принципы работы с файлами.

В Visual Basic реализованы три типа доступа к файлам:

  • последовательный – для чтения и записи текстовых файлов;

  • произвольный – для чтения и записи текста с записями структурированной длины;

  • двоичный – для чтения и записи произвольно структурированных файлов.

Мы в настоящей тетради будем рассматривать только последовательный доступ. Данные в файле хранятся при этом в неструктурированном виде.

Работа с файлами данных всегда состоит из нескольких этапов:

  • получение дескриптора файла;

  • открытие файла;

  • чтение или запись данных;

  • закрытие файла.>

Рассмотрим все перечисленные этапы поочередно.

Дескриптор файла. Чтобы работать с файлами, нужно понимать, как связывается система с файлом. Для этого имеется канал ввода-вывода. При открытии файлу ставится в соответствие канал с определенным номером. Каждый открытый файл имеет собственный канал, с помощью которого записываются или считываются данные. Для ввода и вывода данных имеет значение не имя файла, а номер канала.

Функция Visual Basic FreeFile возвращает номер свободного канала, который можно использовать для работы с файлом. intFh = FreeFile( )

В этом примере переменной intFH присваивается целое значение, которое можно использовать для открытия файла.

Открытие файла. Способ открытия файла с последовательным доступом (для чтения, записи или добавления) задается при вызове оператора Open.

Open Имя_файла For [Input \ Output \ Append] As FileHandle

Если в операторе использовано слово Input, то файл открывается только для чтения из файла. Если файл не существует и открывается для чтения, то Visual Basic выдает сообщение об ошибке.

Если в операторе использовано слово Output, то файл открывается для записи. Если файл с таким именем уже существует, то его содержимое удаляется. Если файла с таким именем нет на диске, то создается новый файл.

Если в операторе использовано слово Append, то файл открывается для добавления. Если файла с таким именем нет, то он создается.

В конце оператора указывается номер канала, возвращаемый функцией FreeFile. Приведем несколько примеров использования оператора Open при последовательном доступе.

Open “Text . txt” For Input As intFH1

Open “C: / DAN / Text . txt” For Output As intFH2

Open “Proba . txt” For Append As intFH3

Чтение данных из файла. Для считывания данных из файла, открытого для последовательного доступа, существует несколько возможностей. В общем случае это осуществляется с помощью оператора Input, имеющего несколько разновидностей.

1)Line Input # считывает одну строку;

2)Input # считывает последовательность символов, обычно записанных с помощью оператора Write #;

3)Input$ считывает определенное количество символов.

Существует несколько вариантов чтения всей информации из файла. Перед чтением нужно открыть файл с помощью оператора Open…For Input:

IntFH = FreeFile

Open “Tex t .txt” For Input As intFH

Первый вариант

Do Until EOF(intFH)

Line Input #intFH, strString

StrText = strText & strString & vbLf

Loop

Второй вариант

StrText = Input $ (LOF(intFH), intFH)

Оба варианта приводят к одинаковому результату. В первом варианте оператор Input выполняется в цикле, пока не будет достигнут конец файла. Функция EOF(End Of File) возвращает значение True при достижении конца файла. При этом на каждом шаге цикла считывается отдельная строка и к ней добавляется символ конца строки, который отбрасывается оператором Line Input.

Во втором варианте весь файл считывается функцией Input $. Функция LOF (Length Of File) позволяет определить длину файла в битах.

Независимо от вида оператора Input указывается не имя файла, а только номер канала, т.е. дескриптор файла (intFH).

Запись данных в файл. В Visual Basic для записи информации в файл используются операторы Print # и Write #.

Оператор Print #. Для сохранения данных в файле нужно открыть файл для записи или добавления оператором Open (Open… For Output или Open … For Append), а потом применить оператор Print #.

Если в операторе данные разделять запятыми, то в файле они будут разделены символами табуляции:

Print #intFH, “Фрагмент1”, “Фрагмент2”

Эта строка соответствует строке:

Print #intFH, “Фрагмент1”; Tab ;“Фрагмент2”

Если в операторе для разделения данных использовать точку с запятой, то данные в файл записываются без разделителей:

Print #intFH, “Фрагмент1” ; “Фрагмент2”

Эта строка соответствует строке

Print #intFH, “Фрагмент1 Фрагмент2”

Оператор Write #. Этот оператор имеет такой же синтаксис, что и оператор Print #. Отличие состоит в форматировании вывода. Если Print # сохраняет данные в виде обычного текста, то Write # заключает текстовые строки в кавычки, а цифры выводятся без кавычек.

Print #intFH, “Мама”,”Папа”, 7645

В файле будет: Мама Папа 7645

Write #intFH, “Мама”,”Папа”, 7645

В файле будет: “Мама”, “Папа”, 7645

Данные, сохраненные с помощью оператора Write#, можно считать оператором Input #.

Закрытие файла Для закрытия открытого файла или канала предназначен оператор Close. Например,

Close #intFH

III Практическая работа на компьютере. Модификация проекта prjSubjects

Попробуем модифицировать проект prjSubjects таким образом, чтобы стандартный массив названий предметов считывался из файла Standart.txt, а итоговый массив названий предметов, которые в настоящий момент времени изучает пользователь, он будет иметь возможность записать в файл MySubject.txt.

Предварительно создадим файл Standart.txt и запишем в него с помощью отдельной процедуры массив из 16 наименований предметов. Будем использовать для этого оператор Write #.

Dim S(15) As String

Dim intFH As Integer

Dim i As Integer

S(0) = "родной язык"

S(1) = "литература"

S(2) = "алгебра"

S(3) = "геометрия"

S(4) = "физика"

S(5) = "химия"

S(6) = "иностранный язык"

S(7) = "биология"

S(8) = "география"

S(9) = "информатика"

S(10) = "технология"

S(11) = "музыка"

S(12) = "изобразительное искусство"

S(13) = "физкультура"

S(14) = "астрономия"

S(15) = "психология"

intFH = FreeFile

Open "Standart.txt" For Output As intFH

For i = 0 To 15

Write #intFH, S(i)

Next i

Close #intFH

В приведенном листинге используется "короткое" имя файла Standart.txt. Имеется в виду относительная адресация. (Проект запускается из текущего каталога и файл Standart.txt помещается в этот же каталог). Если же вы загружаете проект из среды VB, то нужно прописывать полный путь файла Standart.txt.

Теперь рассмотрим, какие изменения нам придется произвести в проекте. Нам придется изменить процедуру Inpt( ), которая находится в модуле кода, так, чтобы массив наименований предметов считывался из файла Standart.txt. Считывать информацию из файла будем с помощью оператора Input #, так как записана она была оператором Write #. Тогда процедура примет вид:

Public Sub Inpt( )

Dim intFH As Integer

Dim i As Integer

intFH = FreeFile( )

Open "Standart.txt" For Input As intFH

Do Until EOF(intFH)

Input #intFH, nameSubject(i)

i = i + 1

Loop

Close #intFH

End Sub

Во второй форме frmMySubj необходимо предусмотреть возможность записи значений полученного пользователем массива nameSubject. Для этого поместим на вторую форму еще одну командную кнопку cmdWrite с значением свойства Caption “Запись в файл”. Составим соответствующий код:

Private Sub cmdWrite_Click( )

Dim i As Integer

intFH = FreeFile

Open "MySubject.txt" For Output As intFH

For i = 0 To 15

Write #intFH, nameSubject(i),

Next i

Close #intFH

End Sub

Везде имеется в виду относительная адресация. (Загружаете проект вы из текущего каталога).

Внесите все эти изменения в свой проект и опробуйте его работу.

IV Итог урока

Здесь представлен конспект к уроку на тему «Работа с файлами в Visual Basic», который Вы можете бесплатно скачать на нашем сайте. Предмет конспекта: Информатика Также здесь Вы можете найти дополнительные учебные материалы и презентации по данной теме, используя которые, Вы сможете еще больше заинтересовать аудиторию и преподнести еще больше полезной информации.

Список похожих конспектов

Работа с папками и файлами с помощью меню и панели инструментов проводника

Работа с папками и файлами с помощью меню и панели инструментов проводника

Семенова Нина Николаевна. учитель информатики. МОУ «Пристанская СОШ». Таврического района. Омской области. Тема: «Работа с папками и файлами ...
Работа с папками и файлами с помощью меню и панели инструментов проводника

Работа с папками и файлами с помощью меню и панели инструментов проводника

Тема: «Работа с папками и файлами с помощью меню и панели инструментов проводника»Цели урока:. - закрепить у учащихся понятие файл и файловая система, ...
Показательная функция, ее свойства и график. Построение графиков функций в среде программирования Visual Basic

Показательная функция, ее свойства и график. Построение графиков функций в среде программирования Visual Basic

Муниципальное бюджетное общеобразовательное учреждение «Кюсюрская средняя общеобразовательная школа»Булунского улуса Республики Саха (Якутия). ...
Графические возможности Visual Basic 6.0

Графические возможности Visual Basic 6.0

Класс: 10. Предмет: информатика. Тема: Графические возможности Visual Basic 6.0. Образовательные задачи: обобщить и систематизировать знания ...
Переменные в Visual Basic

Переменные в Visual Basic

Тема урока: «Переменные в. Visual. . Basic. ». Цель урока:. разобрать понятия переменной в VBА. Тип урока:. комбинированный (объяснение нового ...
Работа с текстом

Работа с текстом

Муниципальное общеобразовательное учреждение. «Мясоедовская основная общеобразовательная школа. Белгородского района Белгородской области». ...
Работа с табличными формами в MS Word 2003

Работа с табличными формами в MS Word 2003

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ КРАСНОДАРСКОГО КРАЯ. ГБПОУ КК «КОЛЛЕДЖ ЕЙСКИЙ». Практическая работа. Работа с табличными формами в ...
Работа с таблицами. Печать документа в текстовом редакторе

Работа с таблицами. Печать документа в текстовом редакторе

План открытого урока по информатике в 8 классе. Тема:.  . Работа с таблицами. Печать документа в текстовом редакторе. Цель урока:.  . Сформировать ...
Управление файлами с помощью файлового менеджера Krusader

Управление файлами с помощью файлового менеджера Krusader

10 класс. Физико-математический профиль. ОС Alt Linux «Школьный мастер 5.0.2». . Урок на тему «Управление файлами с помощью файлового менеджера ...
Редактирование текста. Работа с фрагментами

Редактирование текста. Работа с фрагментами

Открытый урок по информатике. Учителя информатики. Досжанова Гулия Сериковна. «Редактирование текста. Работа с фрагментами». Цель урока. ...
Работа с электронной почтой

Работа с электронной почтой

Конспект урока информатики. ТЕМА «Работа с электронной почтой». Тема урока:. «Работа с электронной почтой». Цель:. . формирование у учащихся ...
Работа в графическом редакторе Paint

Работа в графическом редакторе Paint

Тема:. Работа в графическом редакторе. Paint. Цель:. познакомить учащихся с графическим редактором. Paint. , элементами окна и панелью инструментов. ...
Работа в PowerPoint. Баскетбол

Работа в PowerPoint. Баскетбол

Тема: «Работа в. PowerPoint. . Баскетбол». 10 класс. Цели урока:. . Образовательная:. обобщение и систематизация знаний, умений и навыков ...
Работа в PowerPoint

Работа в PowerPoint

Технологическая карта учебного занятия по информатике в 6 классе в рамках внеурочной деятельности по предмету. Тема. : Работа в PowerPoint. .(Путь ...
Работа в Microsoft Power Point

Работа в Microsoft Power Point

Алматинская область. Райымбекский район. с.Кегень. учитель информатики. . средней школы имени О.Жанабаева. Орынбай Назима. Тема: Работа в ...
Операции над файлами и папками (каталогами)

Операции над файлами и папками (каталогами)

МУНИЦИПАЛЬНОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ. «СРЕДНЯЯ ОБЩЕОБРАЗОВАТЕЛЬНАЯ ШКОЛА №3 С УГЛУБЛЕННЫМ. . ИЗУЧЕНИЕМ ОТДЕЛЬНЫХ ПРЕДМЕТОВ». . г. ...
Работа с фрагментами рисунка. Практическая работа

Работа с фрагментами рисунка. Практическая работа

Класс: 6 класс. . . Дата:. Тема:. «Работа с фрагментами рисунка. Практическая работа». УМК:. . А. Вьюшкова, Н.Параскун. . 2013 Арман-ПВ. ...
Работа в локальной сети

Работа в локальной сети

Урок информатики в 9 классе. Тема: Работа в локальной сети. Организационный момент. . (5 мин). . Добрый день! А сегодня он действительно ...
Работа с фрагментами текста

Работа с фрагментами текста

Урок 13. Работа с фрагментами текста. Планируемые образовательные результаты:. . предметные. – умение работать с фрагментами в процессе редактирования ...
Работа с Macromedia Dreamweaver

Работа с Macromedia Dreamweaver

Дата: ______________. Класс: 10. Тема: Работа с Macromedia Dreamweaver. . Тип урока: Объяснительно – демонстрационный. Цели урока: Дать понятие ...

Информация о конспекте

Ваша оценка: Оцените конспект по шкале от 1 до 5 баллов
Дата добавления:13 ноября 2017
Категория:Информатика
Поделись с друзьями:
Скачать конспект