文件操作认识二

f = open("字节文件.txt", mode="w+b")  # 模式中带有b 说明以bytes类型对文件进行操作 因此不再需要编码来解读此文件 即encoding="utf-8"
f.write("中国CHINA".encode("utf-8"))
f.seek(0)  # 将文件指针移到首部 以byte字节为单位进行移动
print("文件内容打印:", f.read())  # b'\xe4\xb8\xad\xe5\x9b\xbd'
f.seek(3)  # 再次将文件指针由尾部 向前移动  移动到距离起始首位3个字节
print("部分内容打印:", f.read())  # b'\xe5\x9b\xbd'
f.seek(3)  # 再次将文件指针指定位置
b = f.read()  # 变量b接收内容为bytes类型 其内容已经是被utf-8编码过的
print("编码转换后打印:", b.decode("utf-8"))
f.close()
'''
文件内容打印: b'\xe4\xb8\xad\xe5\x9b\xbdCHINA'
部分内容打印: b'\xe5\x9b\xbdCHINA'
编码转换后打印: 国CHINA
'''
print("-------------------------------------")
f = open("字节文件.txt", mode="r+b")
print(f.tell())
f.write(b'china')
print(f.tell())
print("写后 所能见:", f.read())
f.seek(0)
print("文件内容打印:", f.read())
f.close()
'''
0
5
写后 所能见: b'\xbdCHINA'
文件内容打印: b'china\xbdCHINA'
'''
原文地址:https://www.cnblogs.com/cherry2020/p/12819015.html