Привет. Нашел в сети одну базу, но не могу понять, в каком она формате. Файлы с расширением .dat. В аттаче - первый килобайт с начала файла. Подскажите пожалуйста, что это такое?
Нед, человек хочет, чтобы вы по первому килобайту определили, от какой программы этот файл и чем его открыть. Кейген и русификатор к той программе тоже не помешал бы ))
Neonix И что, интересно, я должен был найти по этой чудесной ссылке? Естественно, я сначала попытался найти самостоятельно. intel_x128 Вообще говоря, по внешнему виду сигнатуры в hiew понятны большинство форматов файлов. Хотя конечно не все интересуются, а что же хранится внутри этих ярлычков в проводнике.
Neonix Надо научиться ее читать, как бы подсказывает нам Кэп. На известные мне файлы БД это не похоже. Импорт PHPMyAdmin про такое не знает. Внешний вид сигнатур в Hiew никаких намеков не дал. Ожидаемые данные внутри - простой вектор структур, однако, судя по внешнему виду, это не просто сдампеный массив структур, там есть что-то еще. Это - база Maxmind от марта 2011. Сама база тут: http://www.kat.ph/maxmind-geoip-country-city-organization-database-march-2011-t5290252.html, первые 64 кила (специально для intel_x128) - тут: http://rghost.net/17347471 Мне надо научиться ее читать.
_DEN_ Открыл - ничего не напомнило - хотя видна некая структурка. Попробовал гуглить по ключу: "01,00,00,02,00,00,03,00,00,04,00,00" 6A 9A 29 6B database 2 хита - на какую-то китайскую доку (переводчик сказал что это "Digital Protection and Control device communication protocol version 94 V100"). Наверное это мимо... Если что-то найду - напишу. Есть какая-то дополнительная инфа? Строки со всего файла?
PSR1257II Есть она же в CSV, но более старая версия. Вот кусочек этого же файла, но более старой версии, в CSV: http://rghost.net/17351581. Весь CSV выложить сложновато, т.к. он 412 метров
Ога, начал немного смотреть: Код (Text): 01 00 00 02 00 00 03 00 00 04 00 00 6A 9A 29 6B 9A 29 LRC=28 +1? 05 00 00 06 00 00 47 AE 08 48 AE 08 LRC=07 +1? 07 00 00 08 00 00 0D 44 03 0E 44 03 LRC=00 ?? 09 00 00 0A 00 00 DD 50 02 DE 50 02 LRC=01 +1? 0B 00 00 0C 00 00 52 3D 00 53 3D 00 LRC=01 ?? 0D 00 00 ; Далее не очевидно... 0E 00 00 CA 1B 00 CB 1B 00 89 65 41 0F 00 00 4B 00 00 EE 65 41 Вообще-то больше напоминает некий обмен данными между устройствами нежели ДБ. Хотя после нескольких минут ничего утверждать не стоит.
http://www.maxmind.com/app/installation?city=1 это не оно? в пункте Step 3 - Query Database есть ссылка на АПИ для различных языков для чтения бинарной бд
rmn Ага, это я уже прослоупочил. Скорее всего оно, спасибо. PSR1257II Сейчас попробуем апи, посмотрим, что из этого получится
Еще одна гипотеза (скорее опять не то): может быть это real-числа (6 байт?) например: 4B 00 00 EE 65 41 -> 11497472.009155273440 (там много *65 41 и *66 41). Ну удачи
rmn, PSR1257II http://www.maxmind.com/app/installation?city=1 - оказалось то что нужно. Готовое апи для работы с базой. Правда пришлось потрахаться час в коммандлайне линупса (обожаю это занятие), но теперь все работает. Подцепил geoip как мод апача, и теперь он доступен из php. Всем спасибо!