3. Маппинг файлов

3. Маппинг файлов

При решении задачи обязательно использование WinAPI-функций файлового ввода-вывода и отображения файлов в память. Как минимум один из файлов, описанных в задаче, должен быть отображен в память и доступ к нему осущесвляется на уровне указателей. Желательно работать с проецируемыми файлами в режиме записи. Также требуется проверка возвращаемых результатов системных функций и обработка всех исключений.

CreateFile
CloseHandle
ReadFile
WriteFile
CreateFileMapping
MapViewOfFile и т.п.

1. Открыть существующий, указанный пользователем, файл и записать блок данных в указанную им позицию.
2. Считать из одного структурированного файла блок данных с заданной позиции и записать его в другой файл.
3. Посимвольным считыванием файла определить, является он символьным или бинарным, вывести статистику (наиболее часто используемые символы).
4. Скопировать из одного текстового файла в другой все слова, содержащие заданные пользователем символы. Словами считать последовательности латинских и русских букв, остальные символы считать разделителями.
5. Переписать содержимое файла в обратном порядке (не используя рекурсию).
6. Объединить несколько указанных файлов в один, вывести его размер.
7. Сравнить два файла по смысловому содержанию, т.е. расстояния между словами и разделители не имеют значения, а слова считаются одинаковыми, если состоят из одних и тех же букв (регистр не имеет значения).
8. Из текстового файла удалить слова, которых нет в другом файле-словаре.
9. Прочитать текстовый файл. Вывести информацию о количестве слов, состоящих из одного, двух и т.д. символов.
10. Имеется текстовый файл упорядоченных по дате сообщений. Каждая строка состоит из даты и самого сообщения. Вывести все сообщения за указанный период в отдельный файл.
11. Из заданного структурного файла, в котором хранится информация о товарах (наименование, цена, количество), вывести в другой текстовый файл наименования тех товаров, количество которых не меньше указанного пользователем числа.
12. Известен размер блока данных структурированного файла. Удалить блоки, содержащие нули.

------------------------
во многом Данное ПО относится к области web-технологий , и создано с целью предоставления возможности пользователю разместить на сайте текст в определённом формате, минуя web-итерфейс. Данное решение достаточно актуально, так как позволяет , во-первых, упростить для пользователя работу с web-сайтом , а конкретно - с добавлением материала, во-вторых, данное решение позволяет повысить уровень безопасности при работе с сайтом, как так сотруднику, размещающему статью не обязательно иметь доступ к сайту через web-интерфейс, следовательно, вероятность кражи пароля значительно уменьшается. Также данное ПО актуально в случае отсутствия быстрого интернет-канала – программа берёт на себя контроль за передачей статьи на сервер .