|
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 21
|
||||||||||||||||
Python unpack('i') питоновская анпак integer моя реализация22.11.2014, 22:26. Показов 1687. Ответов 8
Метки нет (Все метки)
Предыстория с задачей: Возникла задача разобрать на C# бинарный файл с данными. недолго думая "великий" гуглопоиск выдал ссылку на питоновский файлик разбора подобного файла.
Взяв в руки учебник на python решил накатать самые простые вещи. Ну что бы не ломать голову как это по другому сделать. ![]() В итоге вот что получилось: в тексте на питоне очень много было таких строк
unpack распаковывает данные по указанному формату. запись unpack('формат', массив), в данном случае формат = i, i - integer. не долго думая вот что получилось. в данном случае pyUnpackToInt(массивбайтизфайла, индекс с короторо начинам читать, сколько читать)
Заранее благодарен.
0
|
||||||||||||||||
| 22.11.2014, 22:26 | |
|
Ответы с готовыми решениями:
8
Выполнение методов perl pack/unpack на языке python Моя реализация акторной модели Ваша идея, моя реализация |
|
|
||
| 22.11.2014, 22:41 | ||
|
0
|
||
|
|
|
| 22.11.2014, 22:54 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 21
|
|
| 22.11.2014, 23:06 [ТС] | |
|
почти все. переношу на unity3d (проект не коммерческий) а скажем так творческий интерес. разобрать одно что бы собрать на другом. преследую несколько целей: 1) вернутся к программированию не на 1С (кто сталкивался с 1С, тот поймет что уж очень расслабляет мозг) 2) выучить c# давно хотел да руки не доходили (взялся за него около полу года назад, но как то все не особо серьезно было) а в свете последних событий тем более стоит более серьезно за него взяться раз уж на *nix ASP.NET портируют. 3) разобраться с unity3d так как на ней можно не только игрушки ваять но и много чего другого. ну а остальное по мелочи. у меня брат фанат сталкера и разных его модов. дак вот переодически просит меня исправить ошибки модов то одно то другое. Вот мне и надоело разбираться с их костылями и решил для начала перенести все на unity3d а если получится не только ogf но и ltx и lua скрипты (ну что бы моды можно было перенести) будет вообще супер. Хотя для меня первоочередной задачей перенести ogf. остальное если останется желание.
знаю знаю таких энтузиастов вагон и маленькая тележка поэтому особо стараюсь не афишировать. Если интересно могу выложить куданить полный парсер ogf правда он работает с оговорками небольшими. но инфу из ogf выдергивает.
0
|
|
|
|
||
| 22.11.2014, 23:12 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 21
|
|
| 22.11.2014, 23:34 [ТС] | |
|
ogf это бинарный файл который состоит из блоков каждый блок содержит ID - 4 byte, size - 4 byte, data [size]
data так же может состоять из блоков. есть блок texture его id = 0x2, он содержит два параметра полный внутренний путь до текстуры (пример: wood\\wood_chipboard1_dirt) и шейдер (пример: models\\model) блоки и их более детальное описание по ссылке выше я давал. но есть маленький нюанс все данные записаны в обратном порядке и на конце имеют 0 т.е. в итоге идентификатор 0x0912 в файле будет выглядеть как 12 09 00 00. Добавлено через 4 минуты я планирую перенести для начала ogf, затем шейдеры, затем ltx - это что то вроде xml с описанием объектов игрового мира с текстами и т.д. а вот AI и SPAWN скорей всего придется сделать свое (хотя посмотрим). Все остальное после этого уже вопрос по крайней мере пока.
0
|
|
| 23.11.2014, 00:44 | ||||||
|
Taekun,
Вместо вашего кода могу предложить
1
|
||||||
|
0 / 0 / 0
Регистрация: 24.01.2014
Сообщений: 21
|
|
| 23.11.2014, 10:38 [ТС] | |
|
ок. ogf файл вот тут
0
|
|
| 23.11.2014, 10:38 | |
|
Помогаю со студенческими работами здесь
9
Моя реализация функции перевода string в int Реализация дэка. Подскажите,в чем моя ошибка? Функция задержки в stm8 iar - моя реализация delay_us Реализация расширенного класса Integer Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|