我的记事本 txt 文件变成了奇怪的字符

我的记事本 txt 文件变成了奇怪的字符

几年前,我在记事本上的 .txt 文件(纯文本)中写了一些笔记,最近我打开它时,它显示这些奇怪的人物。我不知道它是在什么时候变成这样的,但它可能是在从 Windows 7 -> 外部驱动器 -> Windows 10(当前)的过渡期间发生的。

与此文件位于同一文件夹中的其他 .txt 文件也出现了同样的情况,尽管大​​多数文件没有变化。这让我怀疑 Microsoft OS 之间发生了转换错误,或者文件已损坏。

另外,当我用 Notepad++ 打开时,这个文件被写入像这样。当我将其复制到谷歌翻译文本框时,黑色背景的字符变成了某种编码矩阵,所以也许它可以提供某种线索。

我已经尝试过很多方法解码,但都没有成功。也许有人知道这个问题是否可以通过解码为纯文本(ASCII)来解决,或者文件是否已损坏并且无法恢复。

谢谢。

答案1

几年前,我在记事本上的 .txt 文件(纯文本)中写了一些笔记,最近我打开它时,它出现了这些奇怪的字符。我不知道它什么时候变成这样的,但它可能是在从 Windows 7 -> 外部驱动器 -> Windows 10(当前)的过渡期间。

与此文件位于同一文件夹中的其他 .txt 文件也出现了同样的情况,尽管大​​多数文件没有变化。这让我怀疑 Microsoft OS 之间发生了转换错误,或者文件已损坏。

文件已损坏。这可能是硬件问题或操作系统问题,但更有可能的是,它们是在从/向外部驱动器复制时损坏的(例如,通过不良的 USB 连接或驱动器损坏),而不是在操作系统升级期间损坏的。

当我用 Notepad++ 打开时,这个文件是这样的。当我将它复制到谷歌翻译文本框时,黑色背景的字符变成了某种编码矩阵,所以也许它可以提供某种线索。

这些都是“控制字符”– 它们旨在由程序解释,而不是显示在屏幕上,通常它们根本不会出现在文本文件中(当然,CR/LF/TAB 除外)。因此,它们没有标准的视觉表示,并且不同的程序会以不同的方式显示它们发生:

  • Notepad++(其实是它的 Scintilla 核心)显示每个字符的 ASCII 标准名称,例如字节 0x03 表示“EOT”(传输结束),而 0x18 表示“CAN”(取消)。其中一些名称可以追溯到电报时代。

  • 您的浏览器使用相同的方法显示所有不可打印的字符 - “矩阵”只是一个四位数字,表示该字符的 Unicode 代码点。(在本例中,它们是 U+0018 又名 CAN、U+0003 又名 EOT,等等。)

    对于操作系统字体中没有的任何字符,您都会看到相同的带有数字的框,例如,它会显示操作系统/浏览器尚不支持的新发布的表情符号。

我已经尝试过很多方法解码,但都没有成功。也许有人知道这个问题是否可以通过解码为纯文本(ASCII)来解决,或者文件是否已损坏并且无法恢复。

在 Notepad++ 中,文件如下所示有点儿就像它是一半 UTF-8 和一半垃圾(当 UTF-8 文件被误解为 Windows-1252 时,往往会出现重音符号“A”)。

然而,在这种情况下,这可能只是巧合,并且该文件中可能不再有任何可解码的内容。

答案2

对于 OP 来说可能已经太晚了,但我认为像我这样的人可能会遇到同样的问题,并来到这个看似死胡同的地方。但我找到了一个解决方案!我只需将文件上传到 Google Drive 并使用 Google Docs 打开... 就可以了!然后我将数据重新保存为 Word 文件,希望就是这样。我不是专家,但在我看来,记事本或 Windows 已经经历了一些自从我创建原始 txt 文件以来,过去几年发生了变化。希望这可以帮助某些人。

答案3

当我从 Windows 7 过渡到 10 时,这种情况就发生在我身上。在此之前我从未遇到过问题,并且我已经使用了数十个文本文件 20 年,一切正常。自 Windows 10 发布以来,这种情况一直存在,现在仍然存在。我的建议是使用多个串行备份保存您的文本文件,并将其大小保持在 300K 以下。您需要备份来修复乱码文本(复制和粘贴),因为如果您使用 Windows 10,问题就会出现并破坏文件的一部分。这就是答案。

相关内容