跳转到导航跳转以搜索布什隐藏事实是一个常见的名称,其中一些版本的Microsoft Windows中存在的错误,这会导致在ASCII中编码的文本解释为UTF-16LE,导致乱码文本。当字符串"布什隐藏了事实"没有换行符或报价,被列入新的记事本文件并保存,关闭和重新开放,汉字的荒谬序列"畂桳栠摩琠敨映捡獴"会出现。
"布什隐藏了事实"是最常见的句子上internet诱发错误,可以在同一位置中的许多字符串触发错误,例如" hhhh hhh hhhhh" [1]其他序列也触发错误,包括甚至文本" a"
将字符串传递给Win32 Charset检测功能是extextUnicode时发生的错误。 ISTextUnicode看到字节匹配的UTF-16LE编码有效(如果是荒谬)中文Unicode字符的编码,得出的文本是有效的UTF-16Le中文并返回True,并且应用程序然后错误地将文本解释为UTF-16LE。 [2]
自1994年以Windows NT 3.5引入Windows NT 3.5以来,该错误已存在,但在2004年初未发现。[3]许多文本编辑器和工具在Windows上展示了此行为,因为它们使用ISTextUnicode来确定文本文件的编码。由于Windows Vista,记事本已被修改为使用不展示错误的不同检测算法,但IstextUnicode在操作系统中保持不变,因此使用该功能的任何其他工具仍然受到影响。 [4]
编辑文本不是一种触发此错误将避免它的模式。例如,在前20个字符中添加新行将工作。
如果文件保存为" UTF-8"而不是" ansi"文本正确加载,因为记事本添加了UTF-8字节顺序标记,这是一个不触发错误的模式。 UTF-8没有字节顺序标记仍然触发错误,因为此序列在UTF-8中与ASCII相同表示。
通过保存为" Unicode"其中在Microsoft Windows中,也避免了该错误意味着UTF-16LE。加载此文本时,ISTextUnicode应该(and do)返回true,文本是正确的。
要使用记事本检索原始文本,请培养"打开文件" 对话框,选择文件,选择" ansi" 或者" utf-8" 在"编码" 列表框,然后单击“打开”。 在Windows 2000下,记事本缺乏"编码" 列表框。 注意事项2也缺乏这个。 WordPad似乎正确加载文本而不选择编码,因为它使用了自己的编码检测。 ^ Christensen,Brett M.(2009年11月2日)。 "布什隐藏了事实 - 记事本发明索赔" 骗局杀手。 ^陈,雷蒙德(2007年3月24日)。 "有些文件在记事本奇怪 - 旧的新事物" 博客.msdn.com。 ^ Kaplan,Michael S.(2008年3月25日)。 "丛林可能' vere仍然隐藏了这个事实,但他可以用Vista SP1 / Server 2008记事本和#34隐藏它们; 。