условные обозначения для файла, которые пользователь будет использовать для ввода настроек программы

Я пишу программу, которая должна принимать пользовательский ввод, чтобы знать, как отображать символы в том смысле, в каком пользователь должен указать что-то вроде «a => b» (соответствует b). Некоторые из этих «отображений» могут быть спокойными (например, 10+). Я планирую использовать файл, который пользователь может редактировать. После первоначальной настройки пользователь, вероятно, не будет часто менять настройки. Пользователь является ИТ-служащим, поэтому он должен быть технически склонен.

Мой вопрос
1) какой формат файла следует использовать? .txt, .dat, .ini и т. д.? Я хочу, чтобы пользователь мог изменить это с помощью текстового редактора, такого как Блокнот.
2) какой формат должен содержать файл? Имеет ли смысл «a» => «b» или есть лучшее преобразование, или это действительно мне решать?

0

Решение

Все зависит от тебя. Мы часто используем key=valueЗа то, что это стоит.

Что касается «формата файла», имейте в виду, что независимо от того, какое расширение файла вы используете, если это текст, то это просто текст, даже если вы называете его .jpg, Использование вменяемого расширения не принесет никакого вреда, .ini или же .conf довольно распространены.

2

Другие решения

Вместо того, чтобы изобретать велосипед, вы могли бы взглянуть на Boost.PropertyTree. Он предоставляет структуры данных для хранения пар ключ-значение (где в «a» => «b», «a» будет ключом, а «b» будет значением). И предоставляет парсеры для файлов XML, JSON, INI и INFO.

1