Задача: библиотека для работы с конфигурационными файлами
Описание
Необходимо создать мини библиотеку для работы с файлами конфигурации типа INI, со следующим синтаксисом:
Синтаксис:
- Комментарии и пустые строки игнорируются. Комментарий – это строка, которая начинается со знака ';'.
- Тэги, которые указываются в квадратных скобках не могут повторяться.
- Имена полей должны быть уникальны внутри тэга.
Функциональные требования
- Библиотека должна производить разбор конфигурационного файла и находить синтаксические ошибки.
- Библиотека должна предоставлять пользователю интерфейс, с помощью которого, пользователь сможет определять набор полей и их формат для определенных тэгов.
- Библиотека должна предоставлять интерфейс для сохранения конфигурационного файла из пользовательских данных.
Таким образом библиотека должна предоставлять никоуровневую функциональность для разбора и генерации ini-файла, а также для доступа к данным, полученным разборщиком. Пользователь должен иметь возможность на ее основе определить собственные классы, которые будут гарантировать за логическую корректность ini-файла конкретного типа, а так же давать удобный доступ к полям конкретных тэгов.
Требования к проекту
Решение задачи должно включать пример, в котором специфицируется конкретный ini-файл, а так же код, который работает с экземплярами таких файлов:
- читает;
- создает;
- демонстрирует удобство доступа к тэгам и полям.