文件加载在加载文件时,某些字节已被Unicode替换字符替换

Nou*_*uny 15 .net c# debugging visual-studio-2010

当我进入他们的文件时,我突然在.Net框架源代码中调试,Visual Studio 2010引发了这个错误:

文件加载:
加载文件XXX时,某些字节已被Unicode替换字符替换,保存文件将不保留原始文件内容.

当我单击"确定"时,文件被标记为未保存,当您尝试保存文件时,它表示该文件已被锁定,但我可以覆盖该文件.我不知道这个消息意味着什么.

为什么现在,这不是Visual Studio第一次从Symbol服务器下载文件?

Nin*_*rry 12

在最近的 Windows 10 Spring 2018 更新中打开(出于测试目的)新设置“Beta:使用 Unicode UTF-8 进行全球语言支持”后,我开始收到此错误。

然后,对于每个具有非 ascii 字符(在我的情况下主要是德语变音)并且之前未存储为 UTF8 的文件,该消息都会出现。

短期修复:恢复设置,不使用 UTF-8 作为“非 unicode 程序的当前语言”,而是使用具有源文件中使用的特殊字符的语言。

长期修复:将所有源文件转换为 UTF-8。


小智 9

如果您使用的是 Windows 10,您可以在Control Panel-> Clock, Language, and Region-> Region->中找到它Administrative。从非 Unicode 程序的语言中,选择"Select system locale"

取消选中复选框"Beta: Use Unicode UTF-8 for worldwide language support"。按确定。系统将提示您重新启动 Windows - 执行此操作。

之后,如果您是开发人员 - 您可能会在 Visual Studio 中遇到如下编译错误:

error C2855: command-line option "source-charset" inconsistent with precompiled header

只需重建整个项目,问题就会消失。


iLe*_*ing 6

我刚遇到同样的问题.它需要打开一个文件再次保存.我猜一些可以批量执行此操作的工具可以解决问题.

upd:实际上似乎没有帮助......寻找另一种解决方案

upd2:重新保存文件实际上有帮助,但您必须禁用此选项:

Debugging\General \要求源文件与原始版本完全匹配


小智 5

我通过将“非Unicode程序的语言”设置更改为“英语(美国)”来解决此问题。如果使用Windows 10,则可以在“控制面板->时钟,语言和区域->区域->管理”中找到它。

Windows中“区域设置”对话框的屏幕快照