Flask 自行编解码

如果你的工作环境是一个不真正基于 Unicode 的文件系统之类的话,你需要确保使用 Unicode 接口妥善地解码。比如,当你想要在文件系统中加载一个文件,并嵌入到 Jinja2 模板时,
你需要按照文件的编码来解码。这里有一个老问题就是文本文件不指定有效的编码,
所以限定你在文本文件中使用 UTF-8 也是在帮自己的忙。

无论如何,以 Unicode 加载这样文件,你可以使用内置的 str.decode() 方法:

def read_file(filename, charset='utf-8'):
    with open(filename, 'r') as f:
        return f.read().decode(charset)

从 Unicode 转换成指定的字符集,你可以使用 unicode.encode() 方法:

def write_file(filename, contents, charset='utf-8'):
    with open(filename, 'w') as f:
        f.write(contents.encode(charset))

作者:冒牌SEO,如若转载,请注明出处:https://www.web176.com/flask2/21610.html

(0)
打赏 支付宝 支付宝 微信 微信
冒牌SEO冒牌SEO
上一篇 2023年5月18日
下一篇 2023年5月18日

相关推荐

发表回复

登录后才能评论