首页 > 解决方案 > Pycharm从终端创建文件时添加强制BOM

问题描述

在我将 Pycharm 更新到 2021.2 版本后,每当我在 Pycharm 终端上使用 echo 创建新的 .py 文件时,由于以下错误,我无法运行它:

SyntaxError: Non-UTF-8 code starting with '\xff' in file [file path...] on line 1, but no encoding declared;

查找后,我确信 pycharm 正在向创建的文件添加强制性 BOM。

我尝试过的事情:

转到文件 -> 文件属性 -> 删除 BOM(无法删除)

转到文件-> 文件属性-> 文件编码并将其更改为 UTF-8(它给了我以下弹出窗口): 在此处输入图像描述

也不能转换。

转到帮助 -> 编辑自定义 VM 选项并添加-Dconsole.encoding=UTF-8到它

通过单击创建一个新的 python 文件可以正常工作。
在 cmd 终端上使用 echo 创建一个新文件也可以。

这是什么原因造成的?我该如何解决?在更新 Pycharm 之前我没有这个问题。

标签: pythonwindowsencodingpycharmbyte-order-mark

解决方案


正如 Giacomo Catenazzi 指出的那样,将终端更改Settings -> tools -> terminal为 cmd.exe 或 git-cmd.exe(来自 powershell.exe)效果很好。

我现在可以在终端上再次使用 echo 创建文件,而无需将其设置为 UTF-16 和 BOM。


推荐阅读