inohilog

/var/log/inohiro.log

FBXファイルのバイナリ・ASCIIのどちらの形式か判定する

  • FBX と呼ばれる 3D モデルの形式がある
    • データの書かれ方として,バイナリ版とASCII(テキスト)版がある
    • しかし拡張子はどちらも '.fbx' であり,ファイルを開かないとどっちかわからない
    • 'nkf -g' したら,判別できるかなとおもったが,どちらも 'BINARY' と出た
  • バイナリ形式かどうかを判定するコード


  • ファイルの先頭 0-26 Byte を読んで,バイナリ形式かASCII形式か判定している
    • 23-26 Byte 目はバージョンが書いてあるらしい
Bytes 0 - 20: Kaydara FBX Binary  \x00 (file-magic, with 2 spaces at the end, then a NULL terminator).
Bytes 21 - 22: [0x1A, 0x00] (unknown but all observed files show these bytes).
Bytes 23 - 26: unsigned int, the version number. 7300 for version 7.3 for example.