RSS    

   Реферат: Курс лекций по V B 5.0

FileNumber % = FreeFile

Open “имя файла”  For  Input As  #  FileNumber %

После этого можно использовать оператор Line Input # для построчного чтения информации из файла:

Open “File1” For Input As  #1

Line Input  #1, A$ принимает в A$ всю информацию до Enter

Print A$

Close #1

Либо Input # идентификатор файла, список переменных, если запись с помощью Write, txtDisplay

Если файл сложной структуры, состоит из полей и записей, то файл будет читаться целыми записями командой LineInput, либо можно информацию читать из отдельных полей командой Input #

Например, чтение записей из файла Spisok в массив

1. Определяем тип пользователя

Type StudentRecord

Name As String

Adress As String

End  Type

2. Объявляем массив записей типа Student как глобальную переменную

Global StudentAdress( ) As StudentRecord

Sub Proc( )

Dim FileNum As Integer, I As Integer

ReDim StudentAdress(1 to 150)

FileNum = FreeFile

Open “Spisok” For Input As # FileNum

For I=1 to 150

Input  #FileNum, StudentAdress(I).Name

Input  #FileNum, StudentAdress(I).Adress

Next I

Close FileNume

End Sub

Чтение текстового фала в текст, поле

. . . .

FileNum = FreeFile

Open “My.txt” For Input As FileNum

txtDisplay.Text=Input(LOF (FileNum), FileNum)

Close  #FileNum

где  LOF(FileNum) размер файла в байтах

Дозапись информации в существующий последовательный файл

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

Open “имя файла” For  Append As  # идентификатор файла

При этом:

- VB открывает файл, а если он не существует, то создает и создает соответствующий буфер;

-  находит конец файла на диске;

- готовит к записи в конец файла.

Пусть существует текстовый файл My.txt и нужно дописать в его конец строку “До свидания”:

FileNum=FreeFile

Open “My.txt” For Append As FileNum

Print  #FileNum, “До свидания”

Close  #FileNum

При обработке больших файлов часто необходимо проверять на достижение конца файла. Для этого существует оператор EOF (идентификатор файла).

Фрагмент программы чтения информации из файла, созданного с помощью оператора Print #

. . . . .

B$ = “ ”

FileNum=FreeFile

Open “My.txt” For Input As #FileNum

Do Until EOF(FileNum)

Line Input #FileNum, A$

B$=B$+A$

Loop

txtDisplay.Text=B$

Close  #FileNum

Файлы прямого доступа

Напоминают базу данных. Файл состоит из упорядоченных записей одинакового размера. Существует запись, состоящая из полей, в которых содержаться данные. Обеспечивает быстрый поиск информации, но дисковое пространство используется неэффективно.

При создании файла указывается максимальная длина существующей записи. Команда создания файла:

Open “MyLib.dat” For Random As  # идентификатор файла

Len = длина записи, можно определять с помощью функции Len (имя переменной записи) в текущем каталоге.

Открытый файл прямого доступа может быть прочитан и записан практически одновременно.

Close # идентификатор файла - закрывает файл.

Каждая запись в файле имеет номер записи. Это позволяет работать с конкретной записью. При описании записи задаются пользовательским типом:

Type Books

Auther As String *30

Title As String *40

End Type

Запись, содержащую пятой записи файла в переменную:

Get  #FileNum, 5, NewBook   (если NewBook типа Books)

Запись из переменной в сороковую запись файла:

Print  #FileNum, 40, NewBook

Созданные типы записей определяют размер файла прямого доступа. Размер файла определяется функцией FileLen (“имя файла”). Размер записи Len(NewBook) в байтах.

Двоичные файлы

Двоичные файлы - частный случай файлов произвольного доступа, однако размер в них равен 1. Вы оперируете байтами и всегда можно записать или прочитать любой байт файла, указав лишь его позицию в файле. В режиме двоичного доступа можно открыть как последовательный файл, так и файл прямого доступа. Можно одновременно и читать, и записывать в файл.

Имеются следующие операторы:

Открытие - Open “имя файла” For Binary As  #FileNum

Запись в файл - Put  #FileNum, № байта в файле, имя переменной для записи в файл

Чтение из файла - Get  #FileNum, № байта в файле, имя переменной для записи в файл.

Доступ к данным в VB

VB предоставляет средства доступа к данным, которые дают возможность создавать и использовать системы БД, управляющих данными приложения.

VB позволяет обращаться к базам данных многих популярных форматов: MS Access, Btrieve, dBase, FoxPro, Paradox, а также базам данных ODBS  систем клиент-сервер, таким как MS SQL Server.

В стандартной редакции VB инструменты работы с данными включают:

а) процессор БД Microsoft Jet;

б) элемент управления Data;

в) объектный интерфейс программирования Dao (Data Access Objects).

Два последних инструмента обеспечивают два методв взаимодействия с процессором Jet.

Элемент управления Data дает ограниченные возможности обращения к существующим базам данных практически без программирования. Модель DAO - программный интерфейс, обеспечивающий полный контроль над БД. Это коллекция объектных классов, которые моделируют структуру реляционной БД. Они обеспечивают свойства и методы, которые позволяют выполнять все операции с БД, такие как создание БД, определение таблиц, полей и индексов, установление отношений между таблицами, запросы в базах данных.

Процессор Jet транслирует эти операции в процессе выполнения. Он транслирует запросы приложения в физические операции по обработке файлов БД. Он читает, записывает и изменяет базу данных, выполняет индексацию, блокировку, защиту. Он также принимает запросы SQL, в соответствии с которыми выполняет требуемые действия в базе данных, и обрабатывает результаты, возвращаемые запросами.

Хранилище данных - это файл или файлы, непосредственно создание таблицы БД. Для внутренней БД VB или MS Access - это файл формата  .mdb. Для других баз это может быть каталог, содержащий файлы .dbf.

Архитектура доступа к данным в  VB

Схема доступа к данным в приложении VB

пользователь интерфейс

процессор БД

хранилище данных

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

Управление пользовательским интерфейсом осуществляется кодом VB, который манипулирует объектами и методами доступа к данным и запрашивает услуги БД, например, добавление или удаление записей или выполнение запросов. Запросы услуг адресуются не файлу БД, а процессору Jet, который выполняет запрошенные операции по обработке данных и возвращает результаты приложению.

Процессор БД Jet реализован в виде набора файлов динамических библиотек .dll, которые связываются с приложением VB в процессе выполнения Dao в физические операции непосредственно с файлами БД данного формата.

Программирование работы с БД в VB заключается в создании объектов Dao, таких как Database, TableDef, Field и  Index. Свойства и методы этих объектов используются для выполнения операций в БД. Результат этих операций можно вывести на экран, а данные пользователя вводятся через формы VB. Это дает большую гибкость, т.к. одни и те же объекты, свойства и методы можно использовать для доступа к БД различных форматов. Можно также создавать приложения, в которых в единственном запросе или отчете соединяются таблицы из двух и более различных БД.

VB через DAO и  Jet  работает со следующими БД:

1)  БД  VB  - внутренние БД. Формат, что и у MS Access. Создаются и управляются непосредственно процессором Jet.

2) Внешние БД ISAM (индексно-посреднические организации), включая Btrieve, dBase, FoxPro 2. , 3. , Paradox. Эти БД можно создавать и обрабатывать в VB. Можно также обращаться к текстовым источникам данных и   .... MS Excell  и Lotus-1, 2, 3.

3) БД ODBC - интеллектуальные БД клиент-сервер: MS SQL Server, Oracle, поддерживающие стандарт ODBC.

Новый режим DAO - ODBC Direct  позволяет обращаться к источникам данных ODBC, минуя процессор Jet.

Он транслирует запросы приложения в физические операции по обработке файлов БД. Он читает, записывает, изменяет БД, выполняет индексацию, блокировку, защиту и поддержание ссылочной целостности. Он также содержит процессор запросов, который принимает запросы SQL  и в соответствии с ними выполняет требуемые действия в БД, а также процессор результатов, обрабатывающий результаты, возвращаемые запросами.

В процессе обработки запроса процессор Jet выдает подмножество одной из таблиц БД, хотя уже существует или временно создает новую сетку (просмотр) в памяти в виде комбинации данных из разных таблиц. Сетки, состоящей из записей, которые были извлечены из БД, соответствует объект VB RecordSet. Если сетка является дополняемой, то она называется dynaset, в противном случае - snapshop/

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.