Что такое формат файла INI?
Файлы .ini хранят данные конфигурации для приложений в Windows и других операционных системах. Появившись в раннюю эпоху Windows - примерно в 1985 году с файлами win.ini и system.ini, - этот формат распространился далеко за пределы своей родины на Linux, macOS и кроссплатформенное ПО.
.ini - это текстовый формат, который хранит информацию о конфигурации приложения, используя четко определенную структуру разделов и пар «ключ=значение». Заголовок раздела указывается в квадратных скобках, например [General], и все строки с ключами и значениями под ним относятся к этому разделу. Комментарии начинаются с точки с запятой (;); некоторые парсеры также принимают решетку (#). Поскольку официальной спецификации не существует, поведение парсеров различается в зависимости от реализации. К близким форматам относятся .cfg, .conf и более современный .toml.
Можно ли редактировать файл .ini вручную?
Файлы .ini хранят данные в виде обычного текста, что делает их полностью понятными для человека и доступными для ручного редактирования в любом текстовом редакторе. Любая синтаксическая ошибка в файле .ini может привести к неправильной работе приложения или программы, которая его использует, или помешать её запуску, поэтому правки следует вносить осторожно.
Безопасно ли удалять файл .ini?
Удаление файлов .ini крайне не рекомендуется. Системные файлы, такие как desktop.ini, обычно имеют атрибут «скрытый» и не отображаются в стандартном представлении папок. Для некоторых файлов .ini Windows автоматически создает недостающий файл, если он был удален - как в случае с desktop.ini, который определяет настройки вида папки. Если этот файл отсутствует, Windows автоматически создаст новый с настройками по умолчанию.
Безопасность и защита
РИСК: MEDIUMТекстовый файл .ini безопасен для открытия и чтения - он не может исполняться. Реальный риск заключается в РЕДАКТИРОВАНИИ: поскольку .ini часто управляет запуском и поведением программы, неверное значение, опечатка или лишний символ могут сломать приложение. Всегда копируйте оригинал в резервную копию перед внесением изменений, используйте текстовый редактор (никогда не используйте текстовые процессоры, добавляющие форматирование) и меняйте по одному параметру за раз. Остерегайтесь скачанных файлов .ini для «твиков» или «оптимизации» из ненадежных источников - конфигурация может перенаправить программу по неожиданным путям. desktop.ini - это обычный системный файл Windows, а не вредоносное ПО.
Детали формата
в двух словахПрограммы, открывающие файлы INI
Технические подробности
глубокая спецификация| Тип файла | Текстовый файл конфигурации |
| Структура | Именованные [разделы], содержащие пары ключ=значение на отдельных строках |
| Синтаксис разделов | Имя раздела, заключенное в квадратные скобки на отдельной строке, например [Database] |
| Синтаксис ключ-значение | ключ=значение; пробелы вокруг знака «=» необязательны и обрабатываются парсерами по-разному |
| Символ комментария | Точка с запятой (;) - стандартный префикс комментария; некоторые парсеры также принимают решетку (#) |
| Кодировка | Обычно ANSI (Windows-1252) или UTF-8; Windows API также принимает UTF-16 LE с BOM |
| Сигнатура файла | Отсутствует - «магических байтов» нет; файлы идентифицируются по текстовой структуре [раздел] / ключ=значение |
| MIME-тип | text/plain |
| Окончания строк | CRLF (\r\n) в Windows; большинство современных парсеров также принимают только LF |
| Чувствительность к регистру | Имена разделов и ключей нечувствительны к регистру в Windows API; в сторонних парсерах ситуация разная |
| Вложенность | Встроенная поддержка вложенных разделов отсутствует - структура намеренно плоская |
| Типы данных | Все значения являются простыми строками; преобразование типов (целое число, логическое значение и т. д.) остается за считывающим приложением |
| Дублирующиеся ключи | Поведение не определено в оригинальном формате; обычные парсеры используют стратегию «первый побеждает» или «последний побеждает» |
| Функции Windows API | GetPrivateProfileString и WritePrivateProfileString для программного чтения и записи значений |
| Многострочные значения | Не поддерживаются в оригинальном формате; некоторые расширенные парсеры позволяют перенос строки с помощью обратного слэша в конце |
| Выпущен | Early Windows (1985, Windows 1.0 era); win.ini / system.ini popularized the format |
| Открыть стандартное | Да · без роялти |
| Спецификация | en.wikipedia.org |
Конвертации INI
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах INI.