gedit 错误:“意外错误:转换输入中的字节序列无效”

gedit 错误:“意外错误:转换输入中的字节序列无效”

我正在做一个 NLP 研究项目。为此,我必须分析 unicode(僧伽罗语)文本文件大约 10mb,可在 Google 文档中打开。但当我尝试从 gedit 打开它时,出现了此错误

意外错误:转换输入中的字节序列无效

因此,我遵循了类似问题并尝试了第二个答案,建议在终端中运行此命令:

gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'CURRENT', 'ISO-8859-15', 'UTF-16']"

我在终端得到了这个结果:

GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.
No such key “auto-detected”

所以,没有成功。当我尝试在 gedit 中打开文件时,我得到了同样的错误。我该如何解决这个问题?我该如何在编辑

答案1

我不确定问题的原因是什么,但我能够在我的系统上重现它。

我试验性地运行了dos2unix该文件,输出显示它是一个 UTF-16LE 文件。对于好奇的人来说,LE 意味着小端序dos2unix将文件转换为 UTF-8 格式后,我就能用 Gedit 打开它了。

sudo apt install dos2unix
dos2unix -n oldfile newfile
gedit newfile

我使用-n标志来避免覆盖原始文件。oldfile用原始文件名和newfile您想要的新文件名称替换。使用制表符补全(键入文件名的开头并按制表符,应该会出现全名)或'引号(如果您的文件名有空格或其他特殊字符)。

顺便说一下,我可以使用以下方法打开该文件而无需进行转换普卢马,一款基于 Gedit 的文本编辑器,所以我怀疑这可能是 Gedit 的一个错误。打开文件时将--encoding UTF-16LE或传递给 Gedit 并没有帮助。--encoding UTF-16

相关内容