【问题标题】:Notepad++ changes the encoding of my codeNotepad++ 改变了我的代码的编码
【发布时间】:2018-06-28 16:58:09
【问题描述】:

我有一些 python 代码,其中包含对一些印地语文本的识别。我故意将它保存为UTF-8,但是当我重新打开它时,印地语符号会变为俄语文本(大部分)或只是?。编码也更改为OEM 866,这是西里尔字母。

以下是屏幕截图(第 90 和 98 行):

由于这种编码更改,我的代码也根本没有运行,因为正则表达式将? 视为特殊输入。那我该怎么办?

【问题讨论】:

  • 正是出于这样的原因,我建议您将 Python 文件保存为 ASCII 纯文本,并改用 Unicode 代码点来捕获符号。 IE。 \u0905\u092d\u0940 == अभी

标签: python notepad++


【解决方案1】:

将脚本编码为utf-8-BOM 就可以了。但是BOM 本身有problems of it's own。基本上,如果您使用的是 shebang,那么使用 BOM 编码会使脚本无法解释。


编辑: github上的notepad++贡献者rddim回复了issue opened by me

我无法重现这一点,因为可能是我错过了字体。 1日 筛选您的文件在UTF-8 中,第二个在OEM-866 中。 检查 Settings > Preferences... > MISC.. 中自动检测字符编码的状态如果已启用,请禁用它并重试。 还有你的调试 信息错过了来自的信息? > 调试信息...

为我工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    相关资源
    最近更新 更多