解码Ascii二进制

时间:2018-02-12 02:46:10

标签: python python-3.x binaryfiles

所以我尝试了下面的代码,在运行此代码后,它只是打印“”。有人可以指出我做错了什么,或者我能做些什么来解决这个问题

file1 = open("Binaryfile.bin","wb+")
v = bytes("Hello World","ascii")
file1.write(v)
v = file1.read()
v = v.decode('ascii')
print(v)
file1.close()

1 个答案:

答案 0 :(得分:4)

在写入操作之后,您在文件中的位置仍然位于您刚写入的字节的末尾。因此,当您立即调用read时,您会从文件末尾读取,直到错误...文件结束。你会读取(并打印)一个空字符串。

file1 = open("Binaryfile.bin","wb+")
v = bytes("Hello World","ascii")
file1.write(v)
file1.seek(0)   # <--- rewind file!
v = file1.read()
v = v.decode('ascii')
print(v)
file1.close()