.binファイルがあり、16進データを単純にバイト反転したいと思います。たとえば、@ 0x10は、AD DE DE C0を読み取り、DE ADC0DEを読み取りたいとします。
これを行う簡単な方法があることは知っていますが、私は初心者でPythonを学んでおり、日常業務を支援するための簡単なプログラムをいくつか作成しようとしています。0x10だけでなく、この方法でファイル全体を変換したいと思います。
開始オフセット0x000000で変換し、ブロックサイズ/長さは1000000です。
これが私のコードです、多分あなたは私に何をすべきか教えてくれます。私はそれを取得していないと確信しています、そして私はプログラミングとPythonに不慣れです。あなたが私を助けることができれば私はそれを非常に感謝します。
def main():
infile = open("file.bin", "rb")
new_pos = int("0x000000", 16)
chunk = int("1000000", 16)
data = infile.read(chunk)
reverse(data)
def reverse(data):
output(data)
def output(data):
with open("reversed", "wb") as outfile:
outfile.write(data)
main()
そして、あなたは逆転のためのモジュールを見ることができます、私は多くの異なる提案を試みました、そしてそれはファイルをそのまま通過させるか、それはエラーを投げます。モジュールリバースが空になったことは知っていますが、いろいろなことを試しました。ABCDをCDABに変換するには、モジュールを逆にする必要があります。入力ありがとうございます
編集:ファイルは16 MBで、ファイル全体のバイト順序を逆にします。