Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УчебноеПособие по VB_6.doc
Скачиваний:
21
Добавлен:
24.12.2018
Размер:
3.17 Mб
Скачать

Функции для работы с файлами

Dir$( Шаблон [, Атрибуты]) - поиск и получение списка файлов.

If Dir$(“C:\VYFILE.TXT”) = “” Then

MsgBox “Файл не найден”

End If

CurDir$(Drive) – возвращает строку, содержащую текущий каталог. Первый символ параметра Drive возвращает текущий путь для заданного диска.

FileCopy – копирует файл из одного места в другое:

FileCopy исходный_файл, место_назначения.

FileDataTime – возвращает дату и время создания файла или его последней модификации:

FileDataTime (маршрут)

GetAttr – возвращает атрибуты файла:

GetAttr (маршрут) As Integer

0 - обычный;

1 - только для чтения;

2 - скрытый;

4 - системный;

8 - метка тома;

16 - каталог;

32 - архивный.

SetAttr – устанавливает атрибуты файла

SetAttr маршрут, атрибут

Shell(путь, стиль_окна) – используется для запуска любого файла в форматах .com, .exe, .bat или .pif:

X= Shell “C:\ WINDOWS\ COMMAND \ Format.com A:”

Когда VB 6 запускает программу, он создает новое окно и передает ему фокус ввода. Параметр “стиль окна” может принимать 6 значений:

0 - окно скрыто, но имеет фокус;

1 - обычное окно, с фокусом;

2 - окно, представленное значком, с фокусом;

3 - развернутое окно, с фокусом;

4 - обычное окно, без фокуса;

6 - окно, представленное значком, без фокуса.

6.2.3. Упражнение: создание базы данных с использованием файла прямого доступа

Создания базы данных с использованием файла прямого доступа рассмотрим на примере задачи, рассмотренной в разделе 6.1.3.

1. Создадим модуль и в разделе Главная объявим переменную пользовательского типа Ekzamen:

Type Ekzamen

Familij As String * 20

Fizika As Integer

Matematika As Integer

Informatika As Integer

SBall As Single

End Type

2. Объявим там же переменную Usp – успеваемость как переменную типа Ekzamen:

Dim Usp As Ekzamen

Д обавим на форму две кнопки: Сохранить запись и Открыть запись (рис. 6.3.).

Запишем текст программы.

‘ Запись данных в файл

Private Sub cmdSave1_Click()

Dim i As Integer

nKanal = FreeFile

Open "r:\Laborat\VisualBasic\file1.dan" For Random As #nKanal

‘ длина записи принимается по умолчанию

i = Val(txtText2(0).Text) - 1

Usp.Familij = bd(1, i)

Usp.Fizika = Val(bd(2, i))

Usp.Matematika = Val(bd(3, i))

Usp.Informatika = Val(bd(4, i))

Usp.SBall = Val(bd(5, i))

Put #nKanal, i, Usp

End Sub

‘ Чтение данных из файла

Private Sub mnuOpen1_Click ( )

nKanal = FreeFile

Open "r:\Laborat\VisualBasic\file1.dan" For Random As #nKanal

i = Val(InputBox("Укажите номер записи"))

If n = 0 Then

MsgBox "укажите число записей"

Exit Sub

End If

ReDim bd(5, n)

Get #nKanal, i, Usp

bd(0, i) = Str(i)

bd(1, i) = Usp.Familij

bd(2, i) = Str(Usp.Fizika)

bd(3, i) = Str(Usp.Matematika)

bd(4, i) = Str(Usp.Informatika)

bd(5, i) = Str(Usp.SBall)

Grid1.Rows = 2:

Grid1.Row = 1:

For j = 0 To 5

Grid1.Col = j

Grid1.Text = bd(j, i)

Print bd(j, i)

Grid1.Visible = True

Next j

Close #nKanal

End Sub

Тексты программ для кнопок Сохранить и Открыть будут иметь следующий вид:

Private Sub cmdSave_Click()

‘ Сохранение всех данных

nKanal = FreeFile

Open "r:\Laborat\VisualBasic\file1.dan" For Random As #nKanal

For i = 1 To n

Usp.Familij = bd(1, i)

Usp.Fizika = Val(bd(2, i))

Usp.Matematika = Val(bd(3, i))

Usp.Informatika = Val(bd(4, i))

Usp.SBall = Val(bd(5, i))

Put #nKanal, i, Usp

Next i

Close #nKanal

End Sub

Private Sub mnuOpen1_Click ( )

‘ Открыть весь файл

nKanal = FreeFile

Open "r:\Laborat\VisualBasic\file1.dan" For Random As #nKanal

If n = 0 Then

MsgBox "укажите число записей"

Exit Sub

End If

Grid1.Rows = n + 1:

ReDim bd(5, n)

For i = 1 To n

Get #nKanal, i, Usp

bd(0, i) = Str(i)

bd(1, i) = Usp.Familij

bd(2, i) = Str(Usp.Fizika)

bd(3, i) = Str(Usp.Matematika)

bd(4, i) = Str(Usp.Informatika)

bd(5, i) = Str(Usp.SBall)

Grid1.Row = i:

For j = 0 To 5

Grid1.Col = j

Grid1.Text = bd(j, i)

'Print bd(j, i)

Grid1.Visible = True

Next j

Next i

Close #nKanal

End Sub