Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > работа с TFileStream


Автор: Flib 19.12.2010, 04:54
Доброго времени суток.
Есть файл модели с расширением "gm". Файл бинарный.
В нем прописаны текстуры для данной модели.
Как его корректно открыть, найти название текстуры, изменить название текстуры на своё и сохранить изменения?
Буду очень благодарен за ответ.

Файл прилагается.


В данном файле используются текстуры sails_shiplet.tga и shipletlet.tga
PS дело в том что файлов много и менять модели в hex редактореочень долго и нудно =\

Сразу скажу что структуры файла в открытом доступе не нашел(((

Поэтому в мою голову пришли такие мысли:

А мысль сформулировать можно так:

1)загрузить файл в TFileStream
2)Перевести в бинарный код то что мне нужно найти  (имя текстуры)
3)Найти это в TFileStream
4)Заменить на то мне нужно 
5)Сохранить

Затык с пунктами 3 и 4, не знаю как сделать =\

Размер файла может доходить до 20 мб, поэтому перегонять файл в текст, искать и менять там, а затем перегонять обратно в бинарный код - очедь долго и муторно.


Почитав ваш форум увидел идею с считыванием по блокам, но мен смущает один момент. 
Может оказаться что первая(или две, три) первых буквы окажутся в одном блоке, а остальная часть в другом. Тогда я могу вообще ничего не найти(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)