745.29K
Категория: ПрограммированиеПрограммирование

Файлы. Работа с файловой системой

1.

Файлы

2.

Уровни вложенности абстракций
Drive
Directory
File
File
File

3.

System.IO

4.

Работа с дисками
• Реализуется с помощью класса DriveInfo:
• Метод Get.Drives: возвращает имена всех логических дисков
компьютера

5.

Свойства класса DriveInfo
1. AvailableFreeSpace: указывает на объем доступного свободного места на
диске в байтах
2. DriveFormat: получает имя файловой системы
3. DriveType: представляет тип диска
4. IsReady: готов ли диск (например, DVD-диск может быть не вставлен в
дисковод)
5. Name: получает имя диска
6. TotalFreeSpace: получает общий объем свободного места на диске в байтах
7. TotalSize: общий размер диска в байтах
8. VolumeLabel: получает или устанавливает метку тома

6.

Пример 1. получение имен и свойств всех дисков компьютера

7.

Результат работы
приложения

8.

Работа с каталогами
• Реализуется с помощью классов Directory и DirectoryInfo
Предоставляет ряд
статических методов для
работы с каталогами
предоставляет функциональность
для создания, удаления,
перемещения и других операций с
каталогами

9.

функциональность
Directory
Directory.Info
Создание каталога
CreateDirectory(path)
Create()
Удаление каталога
Delete(path)
Delete()
Проверка на существование
каталога
Exists(path)
Exists()
Получение списка вложенных
каталогов
GetDirectories(path)
GetDirectories()
Получение списка вложенных
файлов
GetFiles(path)
GetFiles()
Перемещение
Move(sourceDirName, destDirName) MoveTo(destDirName)
Получение родительского каталога
GetParent(path)
-
Получение корневого каталога
-
Root()
Создание подкаталога по
указанному пути path
-
CreateSubDirectory(path)

10.

Пример 2. получение списка файлов и каталогов

11.

12.

Результат работы
приложения

13.

Пример 3. Создание каталога

14.

Пример 4. получение информации о каталоге

15.

Результат работы приложения

16.

Пример 5. удаление каталога

17.

Результат работы приложения

18.

Пример 6. перемещение каталога

19.

Практическая часть
Напишите программу со следующими функциями:
1. Вывод информации о всех дисках в системе
2. Считывание путь к рабочему каталогу в переменную path и дальнейшая работа с
ним:
a. Создание вложенного каталога “\temp”
b. Вывод информации о текущем каталоге
c. Вывод информации о вложенном каталоге
3. Переместите каталог “\temp” по пути “C:\Users\NewTemp”
4. Реализуйте вывод информационного сообщения об успешном (или нет)
перемещении
5. Удалите каталог “C:\Users\NewTemp” и выведите сообщение об успешном (или нет)
удалении.

20.

Работа с файлами
• Реализуется с помощью File и FileInfo

21.

функциональность
File
File.Info
Копирование файла
Создание
Удаление
Copy()
Create()
Delete()
CopyTo(path)
Create()
Delete()
Перемещение
Получение родительского каталога
Получение полного пути к род. каталогу
Move()
-
MoveTo(destFileName)
Directory
DirectoreName
Проверка существования
Получение размера файла
Получение расширения
Exists(file)
-
Exists
Length
Extension
Получение имени файла
Получение полного имени файла
-
Name
FullName

22.

Создание пустого файла:
- Если файл существует – он будет перезаписан

23.

Дозапись текста в конец файла
Удаление файла

24.

Поток – это абстрактное представление данных (в
байтах), которое облегчает работу с ними. В
качестве источника данных может быть файл,
устройство ввода-вывода, принтер.
Stream
FileStream
NetworkStream
MemoryStream

25.

FileStream - представляет поток, который
позволяет выполнять операции чтения/записи в
файл.

26.

Режимы открытия FileMode:
• Append – открывает файл (если существует) и переводит указатель в
конец файла (данные будут дописываться в конец), или создает новый
файл. Данный режим возможен только при режиме доступа
FileAccess.Write.
• Create - создает новый файл(если существует – заменяет)
• CreateNew – создает новый файл (если существует – генерируется
исключение)
• Open - открывает файл (если не существует – генерируется исключение)
• OpenOrCreate – открывает файл, либо создает новый, если его не
существует
• Truncate – открывает файл, но все данные внутри файла затирает (если
файла не существует – генерируется исключение)

27.

28.

Режим доступа FileAccess:
- Read – открытие файла только на чтение. При попытке записи
генерируется исключение
- Write - открытие файла только на запись. При попытке чтения
генерируется исключение
- ReadWrite - открытие файла на чтение и запись.

29.

Запись в файл
• Реализуется с помощью StreamWriter

30.

Кодировка
• указывается при создании StreamReader/StreamWriter:

31.

Чтение из файла
• Реализуется с помощью StreamReader

32.

Практическая часть
Напишите программу со следующими функциями:
1. Создание файла “text.txt” в любом доступном для вас каталоге
2. Ввод данных в файл по следующему алгоритму:
a. Программа запрашивает ввод данных от пользователя
b. Пользователь вводит строку
c. Эта строка записывается в конец файла(дозапись)
d. Количество дозаписей не менее 4х.
3. Выведите содержимое файла на консоль
English     Русский Правила