Слайд 2Работа с файлами в Windows API
Работа с файлами производится на двух уровнях:
Физический
– представление файла на носителе
Логический – представление файла в программе
На физическом уровне:
Дорожки, цилиндры, сектора, кластеры, разделы
Обычно размер сектора = 512 байт или 4096 байт
Кластер – наименьшая область диска, которая считывается или записывается ОС
На логическом уровне:
Файлы, каталоги
Файл – множество логических записей
Логическая запись – упорядоченное множество данных
Указатель файла – текущая запись файла
Слайд 3Работа с файлами в Windows API
Файловая система – часть ОС, которая обеспечивает
доступ к файлам и связывает логические записи файла с их физическим представлением
Чтение/запись файлов выполняется ФС с использованием буферизации:
Буфер в/в – область ОП для временного хранения логических записей файла
Размер буфера в/в обычно кратен размеру кластера
Использование буфера в/в решает две задачи:
Устранение разницы между размером кластера и записи
Ускорение ввода/вывода
Обычно используется несколько буферов, организованных в кольцевую очередь
Используется упреждающее чтение (кеширование)
Слайд 4Работа с файлами в Windows API
Файловая система ОС должна обеспечивать:
Доступ к файлам:
Создание/удаление
файла
Открытие/закрытие доступа к файлу
Чтение/запись в файл
Установка текущего указателя файла в нужную позицию
Доступ к каталогам:
Создание/удаление каталога
Включение/исключение подкаталога в каталог
Включение/исключение файла в каталог
Вспомогательные операции:
Блокировка всего или части файла
Определение/изменение атрибутов файла
Получение размера файла
Копирование/перемещение файла
Освобождение буферов файла
Получение содержимого текущего каталога
Слайд 5Работа с файлами в Windows API
Задание 1:
Самостоятельно изучить функции Windows API:
CreateFile
ReadFile
WriteFile
CloseHandle
Написать две
программы:
Ввод массива любым образом (с клавиатуры или заполнение случайными числами) и сохранение его в файл.
Чтение массива из файла и вывод его на экран.
Для работы с файлами использовать функции Windows API!!!!!
Слайд 6Работа с файлами в Windows API
Задание 2:
Самостоятельно изучить функции Windows API:
CreateDirectory
GetCurrentDirectory
SetCurrentDirectory
RemoveDirectory
Написать программу
для последовательного выполнения следующих действий с каталогами:
Создать новый каталог
Установить в качестве текущего каталога вновь созданный
Вывести путь к текущему каталогу на экран
Удалить созданный каталог (прежде сменить тек. каталог)
Для работы с каталогами использовать функции Windows API!!!!!
Размер буфера под путь: MAX_PATH (для Си)