Python

byte和byteIO转化

lkf · 11月25日 · 2021年 6345次已读
from io import BytesIO, StringIO

byIo = BytesIO()

# 参数类型为bytes
byIo.write("我的byio".encode("utf-8"))

print(byIo.getvalue())

print(byIo.getvalue().decode("utf-8"))

# 或者如下
print(byIo.getvalue().decode(encoding="utf-8"))
# 或者如下
print(str(byIo.getvalue(), "utf8"))

# 字节类型的,其实也可以进行seek,只不过一个汉字代表3个光标位置,如果移动5个就报错
byIo.seek(6)
print(byIo.tell())
print(byIo.read().decode("utf-8"))

# 通过缓存写入文件
with open("file.txt", mode="wb") as file:
    file.write(byIo.getvalue())

测试上传图片压缩到300k

0 条回应