2016年10月21日

Python でバイナリファイルを読む

  この投稿では,Python におけるバイナリファイルの取り扱いについて,説明する.
  例えば,C 言語であれば,静的型付け言語のため,非常に簡単にバイナリ処理を記述することができる. しかしながら,Python は動的型付け言語のため,unsigned int32型などを利用したければ,多少工夫する必要がある. 例えば,1 文字ずつ (1 Byte単位で) 読み込んだデータを,bit 演算で 8 Byte分の文字列を結合することも可能ではあるが,できればそのまま読み込みたい.
  上記の目的を達成するコードは次のようにして実装される.

example.py
import numpy
FileDir = "./example.bin"
fp = open(FileDir,"rb")
data = numpy.fromfile(fp, numpy.int32, 1)
print("0x%08X" % data)

読み込むバイナリデータ

実行結果 (実行環境はリトルエンディアンであることに注意)
$ python -u example.py
0x000003E8

参考資料

0 件のコメント:

コメントを投稿