我的操作系统是Windows 10。
当我将文件或文件夹复制到原来的位置时,Windows 会自动在文件名末尾添加“copy”字样,这很好。但有一个奇怪的现象,文件名开头添加了两个不可见的字符。
我将这些字符粘贴到二进制编辑器中,结果发现每个字符的代码如下:U+200F
并且一个角色的名字是:RIGHT-TO-LEFT MARK
其二进制表示为:e2 80 8f
该怎么办?如何摆脱这种奇怪的现象?
编辑、操作系统详细信息:
版本:Microsoft Windows [Version 10.0.17134.885]
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
:
AllowDeprecatedCP REG_DWORD 0x42414421
ACP REG_SZ 1255
OEMCP REG_SZ 862
MACCP REG_SZ 10005
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
:
ReleaseId REG_SZ 1803
答案1
我本来不相信,但在下载了您的 Zip 文件后,我确实发现您的文件名称中确实有从右到左的覆盖作为第一个字符。我甚至对目录条目进行了十六进制编辑,以验证情况确实如此。
好消息是它完全无害,没有文本被这个字符隐藏,所以您的计算机不会被使用这种深奥的方法在文件名中隐藏任何内容的恶意软件感染。
我的个人观点(不基于任何来源,因为似乎没有任何来源)是,你发现了一个奇怪的 Windows 神器,其唯一目的是确保从右到左显示希伯来语单词“复制”,עותק。
我的结论是,这是将英语功能本地化为希伯来语 Windows 的不太聪明的做法。这个字符的来源可能来自翻译人员,他可能机械地翻译了 Windows 中使用的字符串,而没有理解它们的上下文或用法。他可能以这种方式将这个 Unicode 字符引入字符串中,甚至可能没有注意到它在那里。从那时起,希伯来语 Windows 就一直盲目地添加这个字符。
我必须说,你竟然能够分析这个问题,这让我印象深刻,你可能是世界上第一个这样做的希伯来语读者。(我确实发现有一个人也发现了波斯语的相同之处。)
我认为这个问题没有任何解决办法。这已经成为 Windows 的“功能”。您最多可以通过反馈中心向 Microsoft 提出投诉。
实际上,您可以忽略该问题,或者避免复制具有相同名称的文件,或者使用某些重命名实用程序从名称中删除该字符。
答案2
Unicode 使用特殊字符“U+202F”来告诉计算机按从右到左的顺序显示其后面的文本。
从右到左的覆盖用于阿拉伯语或希伯来语文本的书写和阅读。
您提到您安装了希伯来语和英语,所以据我所知,您看到的行为是正常的。