【发布时间】:2014-07-08 15:57:46
【问题描述】:
这种情况一直发生在我和我团队中的其他人身上,可能每周发生一次。我们将调试一个 Web 应用程序项目,然后编辑并保存一个作为站点一部分的文本文件(如 .aspx 或 .css 文件)。该文件最初在 Visual Studio 中会很好并且看起来很正常,但是到浏览器的输出将是垃圾。在您关闭 Visual Studio 中的文件并尝试重新打开之前,很难知道发生了什么。出于某种原因,Visual Studio 会在记事本中打开该文件,您会看到所有乱码。
要解决这个问题,我必须从 TFS 恢复文件,并且任何不在 TFS 中的工作都会丢失。
我们安装了 Resharper 8.2.1 和最新的 Telerik UI for Asp.net Ajax 控件。其他一切都是 Visual Studio 的标准设置。
Web 应用程序项目设置为使用 IIS Express。
有没有人遇到过这个问题,知道是什么原因造成的吗?
编辑:这又发生了,但这次是一个类库项目。因此,这似乎不仅仅是 Web 应用程序项目的问题。
【问题讨论】:
-
嗯,很明显,在“编辑和保存文本文件”的过程中,您正在向文件中添加 BOM,这会导致字符集不可用。使用十六进制编辑器打开它并检查文件的前四个字节以确定您正在编写的 BOM 是什么。要找出导致它的原因,您需要调试代码并确定错误 BOM 的写入位置(或者您如何保存导致添加它的文件)。
-
@KenWhite 我通过 File BOM Detector 运行了文件,但它没有在文件中检测到有效的 BOM。我还通过 BOM 检测器从我的项目中运行了一个未损坏的文件,它以 UTF-8 的形式出现。
-
您的屏幕截图没有帮助,请将文件放在文件共享服务上,以便我们从字符代码中判断可能发生的情况。这是一个环境问题,因此请务必说出反恶意软件和防火墙产品、任何自定义 CSS 工具以及是否有人可能使用其他源代码控制程序之类的名称。
-
同样的问题也发生在 VS2013 Update3 中。真的很烦人。
-
我发布了适合我的解决方案。在下面查看我的答案。希望对你有帮助!
标签: visual-studio visual-studio-2013