我有我需要傾倒某種文本格式,編輯,然後重新編譯(可能略有不同版本的二進制格式的)各種二進制文件格式。當然,我可以寫一堆的C/C++做這種事情實用代碼,也許利用了事物的文字側(XML或JSON或其他)圖書館,但是這是保持種植了任務模式在我的工作中,在我看來,可能應該已經存在某種用於這種工作的通用工具。用於編譯/反編譯二進制數據文件的通用實用程序或庫?
很明顯,需要某種方式來描述二進制文件格式 - 一種模式或一些這樣的 - 這將需要支持所有顯而易見的數據類型(字符串,各種大小的整數,布爾等,浮點數將是很好),以及諸如計數字段,長度字段,填充/對齊等等,以處理您在數據文件中找到的所有典型內容。支持字節序支持也是有用的,因爲二進制文件可能與我們運行的平臺有不同的字節順序。
我會很驚訝,如果這樣的事情已經不存在,但我有沒有運氣通過谷歌迄今(你怎麼甚至描述了這樣一個實用程序或庫簡潔?)。我記得最近看到的是蘋果公司的資源編譯器/反編譯器公用程序,它們在「Classic」Mac OS時代就已經出現。它們使用類C語法,頭文件中的資源模板定義用於描述各種二進制資源的格式,並且可以在此C類源語法和二進制資源之間進行編譯/反編譯。
非常好 - 謝謝 - BinX看起來正是我所需要的。我很高興我沒有參與進來,從頭開始編寫這些東西。 ;-) – 2010-01-27 14:52:18
糟糕 - 即將發表 - BinX似乎有一些限制性許可。我想我必須繼續尋找。無論如何感謝... – 2010-01-27 15:04:43
這裏有一個開源版本:http://www.edikt.org.uk/binx/licence_open.html。 – 2010-01-27 16:35:48