图片文件base64编码

2017-09-28  本文已影响0人  第八共同体

1.编码

读取一个文件,然后对其进行base64编码,方便在web网络访问请求时进行传递

import base64
def get_base64_encode(filename):
     with open(filename, 'rb') as f:
            return base64.b64encode(f.read())

2.解码

def write_file_from_base64(filename, data):
        with open(filename, 'wb') as f:
              if not isinstance(data, bytes):
                   data = bytes(data)
              f.write(base64.b64decode(data))

3.要说明的是

由于在python2.x中,字符串默认不是以bytes类型的。在base64.b64encode方法进行图片编码后。如果不对结果进行bytes()转换处理,在进行base64.b64decode()解码的时候,参数变成了普通的str类型。处理结果就会受到影响。而在python3中就不存在这样的问题,因为bytes类型的字符串本身就没有默认转为普通str类型的过程,而python2是有这个过程的,所以也是为什么我们要使用bytes进行类型转换这一过程的。

上一篇下一篇

猜你喜欢

热点阅读