バイナリ ファイル (jpg、mp3 など) を Web セーフ テキストに変換してから、バイナリ データに戻したいと考えています。いくつかのモジュールを調査しましたが、非常に近いと思いますが、データが破損し続けています。
binasciiのドキュメントを見た後、私はこれを思いつきました:
from binascii import *
raw_bytes = open('test.jpg','rb').read()
text = b2a_qp(raw_bytes,quotetabs=True,header=False)
bytesback = a2b_qp(text,header=False)
f = open('converted.jpg','wb')
f.write(bytesback)
f.close()
を開こうとするとconverted.jpg
、データが破損します:-/
b2a_base64
また、バイナリ データの 57 ブロックの長さで使用してみました。各ブロックを取得して文字列に変換し、それらをすべて連結してから、元に戻すa2b_base64
と再び破損しました。
誰でも助けることができますか?私は、バイトとファイル形式のすべての複雑さに精通しているわけではありません。\r\n
それが違いを生む場合、私はWindowsでPythonを使用しています