【问题标题】:How to set the UTF-8 as default encoding in Odoo Build?如何在 Odoo Build 中将 UTF-8 设置为默认编码?
【发布时间】:2017-09-06 19:42:25
【问题描述】:

谁能告诉我如何在 Odoo Build 中将 UTF-8 设置为 默认编码 选项。?

注意:我在所有文件中都提到了“# -- coding: utf-8 --”,这对我的预期编码没有影响。

【问题讨论】:

  • 在你的 xml 中添加

标签: python-2.7 encoding utf-8 odoo-8


【解决方案1】:

如果您将# coding: utf-8 放在 Python 模块的顶部,这会影响 Python 解释源代码的方式。如果您的代码中有包含非 ASCII 字符的字符串文字,这很重要,以便让它们代表正确的字符。

但是,既然您谈论“默认编码”,我假设您关心打开以供读取或写入的文本文件的编码。在 Python 2.x 中,读取和写入文件的默认设置是根本不解码/编码。我不认为您可以更改此默认值(因为内置函数 open 根本不支持编码),但是您可以使用 io.open()codecs.open() 打开文件显式编码。

因此,要从 UTF-8 编码的文件中读取,请按如下方式打开它:

with io.open(filename, encoding='utf-8') as f:
    for line in f:
        ...

在 Python 3 中,内置 open()io.open() 相同,默认编码是平台相关的。

【讨论】:

  • 亲爱的 Lenz,让我重新表述或详细说明我的问题。我确实通过我的代码来操作文本。在开发环境中运行良好的代码在运行 ODOO BUILD 时显示编码错误(由于非 Ascii 字符)。我确实从数据库中读取了文本。
  • @ganesheverbest 我建议您使用这些详细信息更新您的帖子:向我们展示您使用的代码(尝试使用keep it short)并清楚地描述它在哪些情况下有效,哪些情况下无效。
猜你喜欢
  • 2012-03-10
  • 2012-02-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-15
  • 1970-01-01
  • 2010-10-17
  • 2014-01-07
  • 2015-04-14
相关资源
最近更新 更多