Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_11-12.docx
Скачиваний:
4
Добавлен:
06.11.2018
Размер:
81.92 Кб
Скачать

Лабораторна робота №11-12. Тема: Робота з файлами

1. Можливості vb

При проектуванні додатка досить часто виникає необхідність у роботі безпосередньо з файлами. Це потрібно, наприклад, для додавання, видалення файлів або каталогів, запису даних у файли або читання з них як програмно, так і в інтерактивному режимі. Також необхідність роботи з файлами виникає при створенні програми інсталяції розробленої програми на комп'ютери користувачів, читання даних з файлів при ініціалізації додатка з використанням файлів налаштування, організацію виведення файлів на друк.

При роботі з текстовими файлами в Visual Basic. NET застосовується простір імен System.IO, класи якого дозволяють створювати, копіювати, переміщувати, знищувати файли і каталоги, зчитувати дані з текстового файлу і записувати інформацію в нього і багато іншого. Розглянемо класи і їх методи, використовувані при роботі з файлами і каталогами, для кожної операції окремо.

Для виконання основних операцій з файлами, такими як отримання інформації про фото, створення нового файлу, видалення, копіювання і переміщення, призначені класи File і FileInfo. Вони аналогічні один одному і відрізняються тим, що клас File представляє собою статичні методи для роботи з файлами, a Fileinfo – динамічні.

Нагадаємо, що статичними є ті методи класу, які можуть виконуватися без попереднього створення об'єктів класу.

При роботі з текстовими файлами, наприклад, при записі в них інформації та зчитуванні даних, використовуються класи FileStream, StreamReader, StreamWriter. Для виконання побайтових операцій з файлами застосовують класи BinaryReader і BinaryWriter.

При використанні перерахованих класів необхідно імпортувати в програму простір імен System.IO

Imports System.IO

2. Робота з інформацією про файл

Для роботи з атрибутами файлів існують методи GetAttributes і SetAttributes класу File. Метод GetAttributes має наступний синтаксис:

Function GetAttributes (ByVal path As String) As FileAttributes

де path - повне ім'я файлу, що включає саме ім'я файлу і повний шлях до нього. За замовчуванням застосовується поточна папка і пристрій.

Метод повертає змінну типу FileAttributes, яка визначає атрибути файлу.

Константа Опис

Archive Архівний файл

Compressed Стиснутий файл

Device Пристрій

Directory Каталог (папка)

Encrypted Зашифрований файл

Hidden Прихований файл

Normal Звичайний файл, у якого не встановлено атрибути

Offline Дані про файл не доступні в даний момент

Readonly Файл тільки для читання

System Системний файл

Temporary Тимчасовий файл

Аналогічним чином працює метод SetAttributes, що виконує установку атрибутів файлів:

Sub SetAttributes (ByVal path As String, ByVal fileAttributes As FileAttributes)

де path - повне ім'я файлу, що включає саме ім'я файлу і повний шлях до нього; fileAttributes - константа атрибута файлу.

Для того щоб задати кілька атрибутів, можна просто підсумувати зазначені константи. Наприклад, для установки атрибутів файлу Hidden і Readonly необхідно використовувати метод setAttributes такого вигляду:

File.SetAttributes(f, FileAttributes.Archive + FileAttributes.Hidden + FileAttributes.ReadOnly)

Методи класу File, використовувані для отримання даних про файл

GetCreationTime – Повертає дату і час створення файлу

Function GetCreationTime(ByVal path As String) As DateTime GetLastAccessTime

GetLastAccessTime – Повертає дату і час останнього доступу до файлу

Function GetLastAccessTime(ByVal path As String) As DateTime GetLastWriteTime

GetLastWriteTime – Повертає дату і час останнього запису даних у файл

Function GetLastWriteTime(ByVal path As String) As DateTime SetCreationTime

SetCreationTime – Встановлює дату і час створення файлу

Sub SetCreationTime(ByVal path As String, ByVal creationTime As DateTime)

SetLastAccessTime – Встановлює дату і час останнього доступу до файлу

Sub SetLastAccessTime(ByVal path As String, ByVal lastAccessTime As DateTime)

SetLastWriteTime – Встановлює дату і час останнього запису в файл

Sub SetLastWriteTime(ByVal path As String, ByVal lastWriteTime As DateTime)

Для отримання інформації про файл можна також скористатися властивостями класу Fileinfo. Щоб це зробити, слід створити екземпляр класу Fileinfo за допомогою його конструктора:

Sub New FileInfo(fileName)

де fileName є повним ім'ям файлу.

Властивості класу Fileinfo

Attributes

FileAttributes

Повертає або встановлює атрибути

файлу

CreationTime

DateTime

Повертає або встановлює дату і час створення файлу

Directory

String

Повертає батьківський каталог

DirectoryName

String

Повертає повне ім'я батьківського каталогу

Exists

Boolean

Повертає значення True у разі існування файлу, інакше – False

Extension

String

Повертає розширення файлу

FullName

String

Повертає повне ім'я файлу, включаючи ім'я файлу і шлях до нього

Length

Long

Повертає розмір файлу в байтах

LastAccessTime

DateTime

Повертає або встановлює дату і час останнього доступу до файлу

LastWriteTime

DateTime

Повертає або встановлює дату і час останнього запису в файл

Name

String

Повертає ім’я файлу

Як приклад створимо консольний додаток, який за допомогою класу Fileinfo дозволить виводити повне ім'я файлу, його розмір, час і дату створення та атрибути. Процедура Main програми буде мати наступний вигляд:

Sub Main()

Dim fileName As String = "d:\tmp23F.pdf"

If File.Exists(fileName) Then

Dim fileinfo As New Fileinfo(fileName)

Console.WriteLine("Имя файла: {0}. ", fileinfo.FullName())

Console.WriteLine("Размер файла: {0}", fileinfo.Length())

Console.WriteLine("Дата создания: {0}", fileinfo.CreationTime)

Console.WriteLine("Атрибуты: {0}", fileinfo.Attributes)

Console.ReadLine()

Else

Console.WriteLine("Файл не существует")

Console.ReadLine()

End If

End Sub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]