Что такое формат файла IDX?
Расширение файла .idx используется индексными файлами, создаваемыми различными приложениями и инструментами поиска. Один файл .idx содержит индекс записей, файлов или папок - например, внутри каталога данных или базы данных. Точная внутренняя структура зависит от конкретного приложения и может быть бинарной или текстовой.
Файлы .idx могут генерироваться функцией поиска или индексации конкретного приложения. Они могут быть довольно большими, и удаление такого файла не влияет на работу программы. Во многих случаях удаленный файл .idx будет воссоздан автоматически во время последующего процесса индексации.
Индексные файлы используются приложениями для ускорения процессов поиска файлов, в запросах к базам данных и в качестве подпрограмм алгоритмов сортировки. Файлы .idx обычно встречаются в базах данных - например, Visual FoxPro связывает индексные файлы .idx с таблицей .DBF, - но многие другие программы также используют их.
Поскольку .idx является общим расширением, его используют несколько различных форматов:
- Индекс субтитров VobSub - текстовый формат, работающий в паре с файлом данных .SUB для графических субтитров DVD
- Индекс Git pack - бинарный формат, начинается с байтов
FF 74 4F 63; заканчивается контрольными суммами SHA-1 - Индекс FoxPro / Visual FoxPro - бинарное B-дерево отсортированных ключей, ускоряющее запросы к
.DBF - Необработанный индекс LaTeX - текстовый список, создаваемый командой
makeindex
Файл .idx почти всегда является вспомогательным: он ускоряет поиск в сопутствующем файле данных, но не содержит оригинального контента. Приложение, создавшее его, является подходящим инструментом для его открытия или восстановления.
Безопасность и защита
РИСК: LOWФайл .idx представляет собой пассивные данные для поиска, а не исполняемый код, поэтому сам по себе он не является вектором вредоносного ПО. Практические предостережения носят эксплуатационный характер: удаление или редактирование бинарного индекса, который все еще нужен программе, может нарушить поиск или потребовать переиндексации, поэтому позвольте приложению-владельцу управлять им. Большинство индексов приложений восстанавливаются автоматически, что делает их безопасными для удаления, когда вы уверены, какой программе они принадлежат, но проверяйте это перед удалением внутри активной базы данных или репозитория.
Детали формата
в двух словах- Индекс субтитров VobSub (.idx + .sub) - Текстовый индекс временных меток и смещений байтов, указывающий на сопутствующий файл растровых субтитров .sub; загружается VLC/MPC-HC вместе с .sub.
- Индекс Git pack (.idx) - Бинарный индекс (magic FF 74 4F 63), работающий в паре с файлом .pack в .git/objects/pack/ для быстрого поиска объектов.
- Необработанный индекс LaTeX (.idx) - Текстовый список терминов \indexentry, создаваемый LaTeX; обрабатывается makeindex в отсортированный .ind для печатного указателя.
Программы, открывающие файлы IDX
Технические подробности
глубокая спецификация| Тип формата | Вспомогательный индексный файл - отсортированные ключи или указатели смещения, сопоставляющие ID записей или поисковые термины с позициями байтов в отдельном файле данных |
| Кодировка | Бинарная или обычный текст - определяется исключительно создающим приложением; универсальной кодировки не существует |
| Порядок байтов | Little-endian для большинства бинарных вариантов Windows (например, FoxPro); индекс Git pack использует big-endian |
| Магические байты | Универсальная сигнатура файла отсутствует; Git pack .idx начинается с FF 74 4F 63 (строка tOc с предшествующим 0xFF); все остальные варианты .idx должны идентифицироваться по контексту или папке происхождения |
| MIME-тип | application/octet-stream для бинарных вариантов; text/plain for для текстовых вариантов, таких как VobSub и LaTeX |
| Внутренняя структура | Отсортированные ключи, узлы B-дерева или плоские таблицы смещений; Git pack v2 использует fanout-таблицу + отсортированный список SHA-1 + массив смещений |
| Сжатие | Отсутствует - индексы хранятся несжатыми, чтобы отдельные записи можно было найти с помощью быстрого произвольного доступа |
| Шифрование | Отсутствует в обычном использовании; некоторые индексы приложений наследуют защиту доступа от родительского хранилища данных |
| Типичный размер файла | От нескольких КБ до сотен МБ, масштабируется в зависимости от размера индексируемого набора данных |
| Сопутствующий файл | Всегда работает в паре с основным файлом данных, который он индексирует (например, .dbf, .dat, .pack, .sub); файл .idx бессмыслен без него |
| Поведение при регенерации | При удалении приложение обычно воссоздает .idx автоматически при следующем запуске или плановом сеансе индексации |
| Контрольная сумма / целостность | Зависит от приложения - Git pack .idx заканчивается двумя хешами SHA-1; большинство других индексов приложений не включают контрольную сумму |
| Платформа | Кроссплатформенное соглашение, используемое в Windows, macOS и Linux; нет привязки к конкретной ОС |
| Известные именованные варианты | Индекс субтитров VobSub (.idx + .sub), индекс Git pack (v1 и v2), индекс FoxPro/Visual FoxPro, необработанный индекс LaTeX |
| Принадлежность контента | Только вспомогательный - не содержит оригинального контента; все исходные данные находятся в сопутствующем файле данных |
| Используемые модели индексации | B-дерево (FoxPro), плоская таблица смещений (многие почтовые хранилища и кэши поиска), fanout + отсортированный список SHA-1 (Git pack v2) |
| Выпущен | 1980s-1990s (the 'index' convention predates and spans dBASE, FoxPro, mail clients, LaTeX, etc.) |
| Последняя версия | N/A (no single specification - defined per application) |
Конвертации IDX
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах IDX.