Уже есть вопросы, касающиеся Unicode и INI-файлов, но многие из них являются скорее доменными. Поэтому я не уверен, что ответ может быть применен к общему делу.
Мотивация : я хочу использовать ini-файлы для хранения простых данных, таких как некоторые числа и строки. Строки предоставляются пользователями (ввод через GUI). Программное обеспечение может работать в любой точке мира, любой язык может быть использован. Файлы также могут быть разделены между пользователями (чтобы их можно было записывать в одной системе, читать в другой и т. Д.).
Я полагал, что при использовании GetPrivateProfileStringW
и WritePrivateProfileStringW
у юникода в файлах ini не должно быть проблем (я нацеливаюсь на системы> = Windows XP).
Но потом я наткнулся на ответ в на этот вопрос .
Цитата:
Функция WritePrivateProfileStringW запишет INI-файл в устаревшей системной кодировке (например, Shift-JIS в японской системе), поскольку это устаревшая функция поддержки. Если вы хотите иметь полностью INI-файл с поддержкой Unicode, вам нужно будет использовать внешнюю библиотеку.
Я сейчас неуверен - нужно ли беспокоиться? Или я могу просто использовать ini-файлы?
Изменить:
Кажется, ключом к тому, чтобы избежать случайных кодировок, может быть подготовка пустого файла, содержащего спецификацию, а затем использование этого файла. Кто-нибудь (положительный / отрицательный) опыт с этим?