- •1. Специальные конструкции языка 6
- •Введение
- •Специальные конструкции языка
- •Пользовательские типы данных
- •Типизированные файлы
- •Текстовые файлы
- •Нетипизированные файлы
- •Обработка ошибок
- •Оператор On Error
- •Объект Err
- •Обработка событий мыши и клавиатуры
- •Обработка событий мыши
- •Обработка событий клавиатуры
- •1.5. Элемент управления MaskedEdit
- •Графика
- •Элементы управления для графических изображений
- •Генерация графических изображений (примитивов)
- •Графические методы
- •Координаты элементов управления.
- •Примеры использования графических методов
- •Задания для самостоятельной работы
- •Работа с таймером
- •Анимация графических изображений
- •Основные свойства и методы
- •Примеры создания эффектов анимации
- •Варианты заданий по анимации для самостоятельной работы
- •Стандартные диалоговые окна
- •Работа с базами данных в vb
- •Элемент управления Data
- •Объект Recordset
- •Элемент управления msFlexGrid
- •Элемент управления ms Data Bound Grid
- •Использование языка sql в vb для работы с базами данных
- •Литература
Текстовые файлы
Содержимым таких файлов является последовательность строк произвольной длины. При этом в конце каждой строки находится особое сочетание символов, которое обозначает ее окончание и состоит из “возврата каретки” (код в таблице символов = 13) и “перевода строки” (код = 10). В дополнение к сказанному следует заметить, что любой файл, независимо от типа, всегда завершается специальным символом “конец строки” (код = 26).
Операции с текстовыми файлами должны выполняться построчно, при этом после обработки очередной строки указатель автоматически перемещается на следующую строку.
Открытие файла. Для открытия текстовых файлов используется оператор Open следующего формата:
Open путь For назначение As номер
В качестве назначения для открываемого файла используются:
Input – файл открывается для считывания из него информации;
Output – файл открывается для редактирования его содержимого;
Append – файл открывается для добавления новых строк.
При использовании Input в операторе Open файл должен существовать. Служебные слова Output и Append можно использовать как для открытия, так и для создания текстовых файлов.
Запись информации в файл. Для добавления новых строк в файл используется операторы Write и Print, форматы которых записывается в следующем виде:
Write #номер, переменная
Print #номер, переменная
При выполнении данного оператора в конец файла с указанным номером, открытого при помощи служебного слова Append, будет добавлена новая строка из переменной.
Чтение данных из файла. Для извлечения информации из файла возможно использование операторов Input, Line Input и функции Input. Операторы имеют следующий синтаксис:
Input # номер, список переменных
Line Input # номер, переменная
Оператор Input считывает введенные через пробел данные текстовой строки файла в записанные через запятую переменные любого типа. Результатом работы оператора Line Input является присвоение переменной всей очередной строки файла.
Функция Input применяется для извлечения в строковую переменную заданного количества символов из файла и имеет следующий формат:
Input (число, номер)
Результатом вызова этой функции является указанное число символов, скопированных из файла с номером.
Пример 1.2. Создать текстовый файл a.txt и занести в него информацию, состоящую из нескольких строк. Затем его закрыть и открыть в режиме чтения, одновременно с этим нужно создать новый файл b.txt и скопировать в него все строки из a.txt. Затем требуется добавить в b.txt еще одну строку и определить размер обоих файлов. После этого оба файла закрыть.
Программа для выполнения этой задачи будет выглядеть так:
Option Explicit
Private Sub Form_Load()
Dim Fnum1 As Integer
Dim Fnum2 As Integer
Dim int1 As Integer
Dim int2 As Integer
Dim Fpath1 As String
Dim Fpath2 As String
Dim strA As String
Fpath1=“a.txt”
Fpath2=“b.txt”
Fnum1=FreeFile ‘определение свободного файлового номера
Open Fpath1 For Output As Fnum1 ‘редактирование файла a.txt
strA=“Создан текстовый файл,”
Print #FNum1, strA
strA=”который состоит’
Print #FNum1, strA
strA=”из нескольких строк’
Print #FNum1, strA
Close Fnum1
Fnum1= FreeFile
Open Fpath1 For Input As Fnum1
Fnum2=FreeFile
Open Fpath2 For Append As Fnum2 ‘копирование из a.txt в b.txt
Do Until EOF(Fnum1)
Line Input #FNum1, strA
Print #Fnum2, strA
Loop
strA=“Добавлена новая строка” ‘добавление новой строки
Print #Fnum2, strA
‘определение размеров a.txt и b.txt
int1=LOF (Fnum1) ‘результат 63
int2=LOF (Fnum2) ‘результат 88
Close Fnum1 ‘закрытие файла
Close Fnum2‘закрытие файла
End Sub
Практическое применение операторов чтения из файлов и записи в файл рассмотрено в примере 3.1.