python 对任意文件(jpg,png,mp3,mp4)base64的编码解码

       最近调用腾讯ai开发平台的语音合成接口,将文字转为语音数据后,得到的语音格式为base64,那么啥是base64编码,又如何将其转为mp3格式呢?作为一名面向百度的编程爱好者,看完一篇博客后就秒懂了。直接搬运过来,感谢作者分享。

Python的base64函数是内置函数,是一种用64个字符来表示任意二进制数据的方法。用记事本打开exejpgpdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的文本处理软件能处理二进制数据,就需要一个二进制到字符串的转换方法。Base64是一种最常见的二进制编码方法。

 base64对文件的编码解码

对文件的编码就是读取文件内容,encode为base64,对文件的解码就是将base64字符串转换为文件二进制。

  • 编码使用 base64.b64encode()
  • 解码使用 base64.b64decode()

读取文件我们可以用with open as 也可以直接open,区别是with智能关闭文件,open要手动close文件。参考:https://www.cnblogs.com/gengcx/p/6713646.html

上代码:

def ToBase64(file, txt):
    with open(file, 'rb') as fileObj:
        image_data = fileObj.read()
        base64_data = base64.b64encode(image_data)
        fout = open(txt, 'w')
        fout.write(base64_data.decode())
        fout.close()


def ToFile(txt, file):
    with open(txt, 'r') as fileObj:
        base64_data = fileObj.read()
        ori_image_data = base64.b64decode(base64_data)
        fout = open(file, 'wb')
        fout.write(ori_image_data)
        fout.close()

ToBase64("./desk.jpg",'desk_base64.txt')  # 文件转换为base64
ToFile("./desk_base64.txt",'desk_cp_by_base64.jpg')  # base64编码转换为二进制文件

 

参考:https://www.cnblogs.com/dcb3688/p/4610642.html

           https://www.liaoxuefeng.com/wiki/1016959663602400/1017684507717184

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值