gpt4 book ai didi

.net - 在 Visual Studio 中删除隐藏的文件结束字符 (BOM)

转载 作者:行者123 更新时间:2023-12-04 11:43:46 24 4
gpt4 key购买 nike

我正在使用批处理文件来连接我所有的 css 文件

copy /b reset.css+action-plan.css+buttons.css+behaviours.css+footer.css+forms.css+header.css+home.css+layout.css+lightbox.css+print.css+questionnaire.css+typography.css+you-told-us.css main.css

我以前在各种项目中做过很多次,但这个项目使用 .NET 并且文件都是在 Visual Studio 中编辑的。

我遇到的问题是在每个文件的末尾添加了一些神秘的隐藏字符,这些字符在连接时会导致生成的 css 无效。

 126  BLOCKQUOTE, Q   Lexical error at line 119, column 1. Encountered: "?" (63), after : "" ??? /**** left column ****/ 


所有单独的 CSS 文件都经过验证,并且错误仅在单独文件加入时的组合文件中抛出。

最佳答案

问题在于文件中的字节顺序标记 (BOM)。字节顺序标记用于 unicode 文件,用于告诉处理器字节的顺序。你可以在这里读更多关于它的内容:

http://en.wikipedia.org/wiki/Byte_order_mark

问题是 Visual Studio 正在将这些标记添加到您的 css 文件中,当您通过串联将它们组合起来时,BOM 最终会出现在文本的中间,从而把事情搞砸了。

当您转到“另存为”对话框时,您可以展开“保存”按钮以查看“使用编码保存”选项。这将提示您使用不同的编码,我认为其中一个 Unicode 选项会忽略 BOM(列表中的某处是没有签名的 UTF-8)。

我不知道如何将 Visual Studio 设置为默认使用特定编码。

为了避免这些问题,我创建了一个程序来连接尊重 BOM 的文件。我使用它而不是复制或 unix cat。

关于.net - 在 Visual Studio 中删除隐藏的文件结束字符 (BOM),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6099369/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com