- •Содержание
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Процесс создания приложений
- •Структура проекта
- •Событийно-управляемое программирование наVb
- •Типы данных, константы и переменные
- •Типы данных
- •Особые значения
- •Переменные
- •Объявление переменных
- •Константы
- •Выражения, операторы, встроенные функции Выражения
- •Операторы
- •Операции и выражения
- •Встроенные функцииVb Математические функцииVb
- •Функции преобразования данныхVb
- •ФункцияInputBox
- •ФункцияMsgBox
- •Некоторые константы аргумента Кнопки
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Управляющие операторы
- •Основные логические операции
- •Таблицы истинности для основных логических операций:
- •Циклы с параметром
- •Циклы «Делать пока»
- •Массивы
- •Одномерные массивы
- •Многомерные массивы
- •ОператорOptionBase
- •ОператорErase
- •Ввод и вывод массивов Одномерные массивы
- •Двумерные массивы
- •Процедуры и функции Sub-процедуры
- •Событийные процедуры
- •Процедуры пользователя
- •Вызов процедур
- •Аргументы
- •Функции-процедуры
- •Данные символьного типа
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах.
- •Объект управленияProgressBar
- •Создание меню
- •Свойства
- •Работа с несколькими формами
Работа с файлами последовательного доступа
Файлы последовательного доступа – это, как правило, текстовые файлы, т.е. последовательности ASCII-символов, организованные в строки.
При открытии таких файлов возможны три режима доступа:
Input – открыт для последовательного чтения данных;
Output – открыть файл для последовательной записи данных, при этом информация записывается всегда с начала файла (предыдущая затирается, если в файле уже что-то записано);
Append – открыть файл для добавления данных к уже имеющимся в файле (записи добавляются в конец файла).
Чтение данных
Если файл открывается для чтения, то он должен существовать, иначе возникнет ошибка!
Чтение данных из файла последовательного доступа выполняется с помощью функции Input и операторов Input # и Line Input #.
Функция Input считывает из файла заданное количество символов и обычно используется для чтения данных, записанных в файл оператором Print #.
Синтаксис
Input(number, #filenumber),
где
number - целое число, которое задает количество считываемых из файла символов;
filenumber - номер файла.
При использовании этой функции следует иметь в виду, что необходимо знать количество считываемых символов. Поэтому предварительно необходимо вычислить длину считываемого файла с помощью функции Fileline.
Оператор Input # используется, когда необходимо прочитать данные, имеющие структуру с разделителями (в качестве разделителей - запятые). Такие файлы получаются при использовании оператора записи Write #.
Синтаксис
Input #filenumber, varlist,
где
filenumber - номер файла,
varlist - список переменных.
При работе этого оператора сначала считывается целая строка, а затем подстроки, отделенные разделителями (запятыми), помещаются в соответствующие переменные списка.
Для чтения всего содержимого файла необходимо организовать циклическое считывание данных из файла, поскольку в переменные данные считываются этим оператором по строкам.
Оператор Line Input # используется для построчного чтения данных из последовательного файла, обычно записанного оператором Print #.
Синтаксис
Line Input #filenumber, varname,
где
filenumber - номер файла,
varname - имя переменной.
Оператор посимвольно считывает всю строку данных из файла и помещает ее в строковую переменную. При этом разделителем строк в файле служит стандартный разделитель строк символ возврата каретки CHR(13) или последовательность символов возврата каретки и перевода строки CHR(13)+CHR(10), причем в переменную varname эти разделители не вставляются.
Для того, чтобы прочитать все данные из файла при помощи этого оператора, необходимо организовать цикл чтения данных из файла.
Запись данных
Данные в файл последовательного доступа записываются с помощью операторов
Print #иWrite #.
Оператор Write # дополнительно автоматически вставляет в файл разделители.
Еще раз. Каждая из функций записи работает в паре с определенной функцией чтения. Для оператораPrint #это функцияInputили операторLine Input #, а для оператораWrite # – это операторInput #.
Синтаксис
Print #filenumber, [outputlist]
Write #filenumber, [outputlist]
где filenumber – номер файла,
outputlist – список выражений или переменных для записи.
При выполнении записи данных в файл оператор и Write # автоматически вставляет символ перевода кареткиCHR(13) и символ новой строки CHR(10).
Замечание. Write # иInput #лучше применять для файлов бинарных и прямого доступа.
Переход на заданную позицию в файле
Переход на заданную позицию в файле можно организовать с помощью оператора Seek.
Синтаксис
Seek #filenumber, position
где filenumber – номер файла,
position – целочисленное выражение, задающее позицию указателя в файле. Позиционирование при этом выполняется посимвольно.
Оператор Seekустанавливает указатель на требуемую позицию. Если после этого использовать функции чтения или записи, то действие этих функций будет выполняться, начиная с позиции указателя, найденного операторомSeek.
Примеры операторов работы с файлами
Запись файла с помощью оператора Print #
Dim pathfile As String
Private Sub Command1_Click()
pathfile = "C:\WINDOWS\Рабочий стол\primer\primer.txt" ‘имя файла
Open pathfile For Output As #1 ‘открытие файла на запись
Print #1, " Проверка работы с файлами VB " ‘запись в файл
For i = 1 To 3
Print #1, i ‘запись в файл
Next
Close #1
End Sub
Запись идет по строкам, если в Print использовать «;» запишется одна строка.
Каждый раз при выполнении программы файл будет перезаписываться заново.
Если необходимо добавлять записи в файл, нужно открыть его на дозапись
Open pathfile For Append As #1
При выполнении программы новые строки будут записываться в конец файла.
Чтение файла с помощью функции Input
Private Sub Command2_Click()
Open pathfile For Input As #1 ‘открытие файла на чтение
len_str = FileLen(pathfile) ‘определение числа символов в файле
strfile = Input(len_str, #1) ‘считывание всех символов файла в строку
Text2.Text = strfile ‘вывод строки в TextBox
Close #1
End Sub
Чтение файла с помощью оператора Line Input #
Private Sub Command2_Click() Open pathfile For Input As #1 ‘открытие файла на чтение Do While Not EOF(1) ‘организация цикла на чтение файла до конца Line Input #1, strfile ‘построчное чтение записей из файла в переменную Text2.Text = Text2.Text + strfile + Chr(13) + Chr(10) ‘формирование очередной строки TextBox Loop Close #1 End Sub |
|
TextBox имеет свойство MultiLine =True |
Запись файла с помощью оператора Write #
Dim pathfile As String
Private Sub Command1_Click()
pathfile = "C:\WINDOWS\Рабочий стол\primer\primer.txt" 'имя файла
Open pathfile For Output As #1 'открытие файла на запись
Write #1, "Проверка работы с файлами" 'запись в файл
For i = 1 To 3
Write #1, "Строка", i 'запись в файл
Next
Close #1
End Sub
Чтение файла с помощью оператора Input #
Private Sub Command2_Click() Open pathfile For Input As #1 Do While Not EOF(1) Input #1, strfile Picture1.Print strfile Loop Close #1 End Sub |
|