windows记事本中奇怪的utf8解码错误
如果您在一个用utf8编码的文本文件(不带bom)中键入以下字符串,并用notepad.exe打开它,您将在屏幕上看到一些红色字符。但记事本实际上可以很好地解码这个字符串,而不需要最后一个“a”。非常奇怪的行为。我使用的是Windows101809windows记事本中奇怪的utf8解码错误,windows,utf-8,character-encoding,notepad,Windows,Utf 8,Character Encoding,Notepad,如果您在一个用utf8编码的文本文件(不带bom)中键入以下字符串,并用notepad.exe打开它,您将在屏幕上看到一些红色字符。但记事本实际上可以很好地解码这个字符串,而不需要最后一个“a”。非常奇怪的行为。我使用的是Windows101809 [19, 16, 12, 14, 15, 15, 12, 17, 18, 15, 14, 15, 19, 13, 20, 18, 16, 19, 14, 16, 20, 16, 18, 12, 13, 14, 15, 20, 19, 17, 14,
[19, 16, 12, 14, 15, 15, 12, 17, 18, 15, 14, 15, 19, 13, 20, 18, 16, 19, 14, 16, 20, 16, 18, 12, 13, 14, 15, 20, 19, 17, 14, 17, 18, 16, 13, 12, 17, 14, 16, 13, 13, 12, 15, 20, 19, 15, 19, 13, 18, 19, 17, 14, 17, 18, 12, 15, 18, 12, 19, 15, 12, 19, 18, 12, 17, 20, 14, 16, 17, 18, 15, 12, 13, 19, 18, 17, 18, 14, 19, 18, 16, 15, 18, 17, 15, 15, 19, 16, 15, 14, 19, 13, 19, 15, 17, 16, 12, 12, 18, 12, 14, 12, 16, 19, 12, 19, 12, 17, 19, 20, 19, 17, 19, 20, 16, 19, 16, 19, 16, 12, 12, 18, 19, 17, 18, 16, 12, 17, 13, 18, 20, 19, 18, 20, 14, 16, 13, 12, 12, 14, 13, 19, 17, 20, 18, 15, 12, 15, 20, 14, 16, 15, 16, 19, 20, 20, 12, 17, 13, 20, 16, 20, 13a
我想知道这是否是windows的错误,或者我可以做些什么来解决这个问题。做了更多的研究;我明白了 似乎是“布什隐瞒事实”这一经典案例的变体。 看起来记事本保存文件的默认字符编码与打开文件的默认字符编码不同。是的,这看起来确实像个虫子 但对正在发生的事情有一个实际的解释:
希望有帮助 做了更多的研究;我明白了 似乎是“布什隐瞒事实”这一经典案例的变体。 看起来记事本保存文件的默认字符编码与打开文件的默认字符编码不同。是的,这看起来确实像个虫子 但对正在发生的事情有一个实际的解释:
希望有帮助 似乎记事本将其解释为整个字符串的固定2字节,因此在内部将其转换为UCS-2。[19,16,12,1映射到ㅛ ⰹ ㄠ ⰶ ㄠ ⰲ ㄠ , 所以第一个角色实际上是[1',第二个是'9',第三个是'1',等等。因此,当您删除最后一个'a',它无法将其编码为2字节字符。很抱歉,如果上面的内容令人困惑。我只理解位和段。仍在尝试解决所有问题。记事本似乎将其解释为整个字符串的固定2字节,因此在内部将其转换为UCS-2。[19,16,12,1映射到ㅛ ⰹ ㄠ ⰶ ㄠ ⰲ ㄠ , 因此,第一个字符实际上是“[1”,第二个是“9”,第三个是“1”,等等。所以当你删除最后一个“a”时,它不能将其编码为2字节字符。如果上面的内容令人困惑,我很抱歉。我只理解比特和片段。仍在努力解决所有问题。