为什么会有这种数据流传输呢?
如果你是网页开发的话这种可能你会用不到,但是如果你是接收IOS,Android和小程序传过来的文件的话,那你要怎么接收呢,是不是得通过数据流的方式进行接收了。
二进制
使用wb方式写入数据
下面是以传输过来的图片二进制写入到服务端中的例子:
with open(path,'wb') as f:
f.write(file)
解释:
- path : 图片的路径
- file : 图片的二进制流
base64
import base64
def convert(image):
# 图片转base64
with open(image, 'rb') as f:
image = f.read()
image_base64 = str(base64.b64encode(image), encoding='utf-8')
# 把base64存入到1.txt中
file = open('1.txt', 'wt', encoding='UTF-8')
file.write(image_base64)
file.close()
# base64转图片
with open("1.txt", "r") as f:
img_data = base64.b64decode(f.read())
file = open('1.jpg', 'wb')
file.write(img_data)
file.close()
if __name__ == "__main__":
convert('test.png')
图片base64在模板html中显示图片
<img src="data:img/jpg;base64,这里写的是base64的数据流" />
data:img/jpg;base64 这个是固定写法,,
后面的是base64数据流。