- •Представление информации
- •Представление символов
- •Представление целых чисел (способ с фиксированной точкой)
- •Представление чисел с дробной частью (способ с плавающей точкой)
- •Некоторые важные итоги
- •О Visual Basic (далее vb) в сравнении с другими языками.
- •Основные типы данных vb
- •Типы Byte/Integer/Long
- •Типы Single/Double/Currency
- •Структура проекта
- •Переменные
- •Область видимости переменных
- •Время жизни переменных
- •Константы
- •Преобразование и совместимость типов
- •Ввод и вывод значений переменных Ввод данных с помощью функции InputBox
- •Вывод данных с помощью инструкции Print
- •Форматирование вывода
- •Лекция 6 Вывод данных с помощью функции MsgBox
- •Управление порядком выполнения инструкций
- •Условная инструкция If ... End If
- •Однострочный синтаксис
- •Блочный синтаксис
- •Инструкция выбора Select Case (выбрать в случае)
- •Инструкции цикла
- •1. Параметрический цикл For… Next
- •Лекция 7
- •2. Итерационный циклDoWhile...LoopилиDo...LoopWhile
- •3. Итерационный цикл Do Until...Loop или Do...Loop Until
- •Операции и функции
- •Лекция 8 Массив
- •1. Описание массива фиксированного размера
- •2. Описание динамического массива
- •3. Присвоение массивов
- •Лекция 9
- •Логические операции
- •Лекция 10 процедуры и функции
- •Виды процедур и функций
- •Вызов процедур и функций
- •Объявление процедур и функций
- •Именованные аргументы
- •Область действия имен процедур и функций
- •Пример 1.
- •Пример 2.
- •Лекция 11
- •Лекция 12
- •Перечень подзадач
- •Блок-схема алгоритма функции Проверка
- •Разработка программы
- •Лекция 13 Пример 4
- •Передача аргументов по ссылке и по значению
- •Лекция 14 Отладка
- •1. Режим отладки
- •2. Точка останова
- •3. Пошаговое выполнение программы
- •3.1. Шаг с заходом (Step into)
- •3.2. Шаг с обходом (Step Over)
- •3.3. Шаг с выходом (Step Out)
- •3.4. Выполнить до текущей позиции (Run To Cursor)
- •3.5. Список вызовов
- •4. Окна режима отладки
- •4.1. Окно подсказки Data Tips
- •4.2. Окно контрольного значения (WatchWindow)
- •4.3. Окно локальных переменных (LocalWindow)
- •4.4. Окно отладки (ImmediateWindow)
- •4.5. Инструкция Print
- •5. Обработка ошибок времени выполнения
- •5.1. Перехват ошибки
- •5.2 Проверка и устранение ошибки
- •5.3 Продолжение выполнения программы
- •Лекция 15 Пользовательский тип данных
- •ИнструкцияWith
- •Использование в качестве аргументов процедур и функции имен форм и элементов управления
- •Знаки типов
- •Графика
- •1. Система координат
- •1.1 Свойство ScaleMode
- •1.2. СвойстваScaleLeftиScaleTop
- •Лекция 16
- •1.3. СвойстваScaleWidthиScaleHeigt
- •1.4. МетодScale
- •2. Графические изображения
- •3. Графические управляющие элементы
- •4. Работа с рисунками
- •5. Графические методы
- •6. Построение графиков функций
- •Лекция 17 Файлы
- •Номер файла
- •Типы доступа к файлам
- •Последовательный доступ
- •Чтение из файла последовательного доступа
- •Запись в файл последовательного доступа
- •Произвольный доступ
- •Открытие файла
- •Ввод и вывод (Get- чтение,Put- запись)
- •Двоичный доступ
- •Открытие файла для двоичного доступа
- •Ввод и вывод
- •Лекция 18 События
- •События клавиатуры
- •Объекты, классы, коллекции
- •Экзаменационные вопросы
Типы доступа к файлам
В VBпредусмотрены три типа доступа к файлам:
последовательный доступ (Sequential)– для чтения и записи текстовых файлов, которых могут состоять из записей переменной длины;
произвольный доступ (Random)– для чтения и записи файлов с записями, которые могут быть только одинаковой длины;
двоичный доступ (Binary) – для чтения и записи отдельных байтов файла.
При последовательном доступе для доступа к какой-либо записи должны быть пройдены все предыдущие записи. При произвольном доступе можно сразу перейти к нужной записи. Все внешние устройства позволяют использовать последовательный доступ к записям файла. Произвольный доступ позволяют использовать только магнитные и оптические диски.
Последовательный доступ
Последовательный доступ используется главным образом при работе с текстовыми файлами. Текстовый файл может содержать коды символов, признак перевода строки ( vbCrLfилиChr(13) &Chr(10)), признак табуляции (vbTabилиChr(10)) и признак конца файла. Здесь записи – это строки переменной длины, отделенные друг от друга символом перевода строки.
Файл последовательного доступа должен быть открыт инструкцией Open:
Open ИмяФайла For [Input / Output / Append] As НомерФайла
Ключевое слово |
Описание |
Input |
Открытие только для чтения из файла |
Output |
Открытие для записи в файл |
Append |
Открытие для добавления к файлу |
Если файл не существует и открывается для чтения (Input), тоVBвыдает сообщение об ошибке, а если для записи или добавления (OutputилиAppend), то создается новый файл. Если файл с указанным именем существует, то в режимеOutputего содержимое удаляется, а в режимеAppendфайл открывается для добавления:
В конце строки указывается номер файла НомерФайла.
Пример.
Open "С:\Readme.txt" For Append As fh1
Инструкция Close #НомерФайлапредназначена для закрытия открытого файла. Если номер файла указан, то закрывается соответствующий файл, если нет, то закрываются все открытые файлы. Примеры:
Close #fh 'закрывает файл, описываемый номером fh;
Close fh 'использование # необязательно;
Close 'Закрывает все файлы, открытые приложением
Чтение из файла последовательного доступа
Для считывания данных из файла, открытого для последовательного доступа, существует несколько возможностей. В общем случае это осуществляется с помощью инструкции Input, имеющей несколько разновидностей:
Инструкция Line Input # считывает одну запись.
Line Input #НомерФайла, ИмяПеременной
где LineInput– ключевое слово;
НомерФайла – это номер файла;
ИмяПеременной – имя переменной типаStringилиVariant, которая принимает значение записи файла.
При выполнении инструкции считывается одна запись файла и помещается в ячейку оперативной памяти, адрес которой соответствует имени переменной в инструкции ввода (переменная получает значение, совпадающее с введенной записью файла). Последовательное выполнение инструкций ввода обеспечивает последовательное считывание записей файла.
Инструкция Input$ - считывает заданное количество символов (байтов).
Может применяться как инструкция и как функция, например:
Строка = Input$ (КоличествоБайтов, НомерФайла)
Прочитать всю информацию из файла можно несколькими способами:
Private Sub Form_Click()
Dim S As String, T As String
Dim fh As Integer
fh = FreeFile
Open “c:\ReadMe.txt” For Input As fh
‘ 1-ый вариант
Do Until EOF(fh)
Line Input #fh, S
T = T & S & vbLf
Loop
‘ 2-ой вариант
‘ T = Input$(LOF(fh),fh)
Close #fh
Print T
End Sub
Оба варианта приводят к одинаковому результату. В первом варианте инструкция Input: выполняется в цикле, пока не будет достигнут конец файла. ФункцияEOF(сокращениеEndOfFile) возвращает значениеTrueпри достижении конца файла. При этом на каждом шаге цикла считывается отдельная строка и к ней добавляется символ конца строки, который отбрасывается инструкциейLineInput.
Во втором варианте весь файл считывается функцией Input$. ФункцияLOF(сокращениеLengthOfFile) позволяет определить длину файла в байтах.
3. Инструкция Input #- применяется для чтения файлов, записанных инструкциейWrite #.