- •Содержание
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Процесс создания приложений
- •Структура проекта
- •Событийно-управляемое программирование на vb
- •Типы данных, константы и переменные
- •Типы данных
- •Особые значения
- •Переменные
- •Объявление переменных
- •Константы
- •Выражения, операторы, встроенные функции Выражения
- •Операторы
- •Операции и выражения
- •Встроенные функции vb Математические функции vb
- •Функции преобразования данных vb
- •Функция InputBox
- •Функция MsgBox
- •Некоторые константы аргумента Кнопки
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Управляющие операторы
- •Основные логические операции
- •Условные операторы
- •Однострочный синтаксис
- •Блочный синтаксис
- •Select Case(оператор выбора)
- •Циклы с параметром
- •Циклы «Делать пока»
- •Массивы
- •Одномерные массивы
- •Многомерные массивы
- •Оператор Option Base
- •Оператор Erase
- •Ввод и вывод массивов Одномерные массивы
- •Двумерные массивы
- •Процедуры и функции
- •Событийные процедуры
- •Процедуры пользователя
- •Вызов процедур
- •Аргументы
- •Функции-процедуры
- •Данные символьного типа
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах. Объект управления Shape (Фигура)
- •Свойства
- •Объект управления Timer
- •События
- •Свойства
- •Окна общего диалога
- •Создание меню
- •Свойства
- •Работа с несколькими формами
Закрытие файлов
Все открытые файлы по окончании работы с ними необходимо закрыть!
Синтаксис оператора закрытия файлов
Close [FileNamberList]
FileNamberList – список закрываемых файлов, представленных номерами файлов и перечисляемых через запятую. Если список файлов опущен, то закрываются все открытые файлы.
Работа с файлами последовательного доступа
Файлы последовательного доступа – это, как правило, текстовые файлы, т.е. последовательности 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 |
|