在Doxygen生成的胶乳来源中的字符无效?

我在运行XP的Windows计算机上的Visual Studio 2008的C#项目上运行doxygen(1.5.8)。 在生成胶乳代码时,会包含一些非法序列。 它总是包含以下顺序:“拉丁 - 我与dieresis,如二进制移位操作符,和西班牙开放问号”。 我在“使用{ bf系统}”的背景下看到它发生了,但也许还有其他的。

生成的乳胶文件读取

    begin{CompactItemize}
    item 
    using {bf System}
    end{CompactItemize}

虽然来源简单:

using System;
using System.Collections.Generic;
using System.Linq;

一些奇怪的Windows BOF字符? 它似乎只在使用系统之前; 指令(每个文件的第一个)。

编辑:感谢所有。 正如我在下面接受的答案中所述,这是BYTE_ORDER_MARK字符。 很明显,不出所料,Visual Studio正在发挥作用。 好的是有一种方法可以在没有BOM签名的情况下以UTF-8保存文件。 文件 - >高级保存选项 - >编码(无签名的UTF-8) - 代码页65001.糟糕的是,似乎没有办法用批量编码保存解决方案的所有现有文件,可以这么说,每个文件必须独立保存。 我发现的另一个怪癖(至少在我的情况下)是文件 - >高级保存选项不可用,除非您双击该类并且该文件在编辑器中打开。 好吧...


一世”

这是UTF-8编码字符U + FEFF(BYTE ORDER MARK)的ISO-8859-1表示。 材料清单是用作UTF-16文件中的第一个代码点,不应该用于UTF-8文件,但不幸的是,有一些非常愚蠢的工具默认生成它。 如果您通过连接来自其他文件的文本位来创建文件,则甚至可以在文档中间结束BOM。

找到将文件保存为“带有BOM的UTF-8”的编辑器并将其刻录。

ETA重新更新问题:

使用{ bf系统}

虽然来源简单:

使用系统;

在“使用”之前,在十六进制编辑器中检查隐藏人造BOM的来源。


你有什么想法的文字应该是什么样子?

有几种可能性,最明显的是你有一些随机的Unicode,这些是你从TeX字体中获得的字符。


它看起来像一个字符编码问题给我。

这个三字符序列是用UTF-8编码的Unicode字节顺序标记0xfeff ,尽管我不确定为什么字节顺序标记会显示在文档的中间......这可能很重要,或者它可能很重要可能只是巧合。

链接地址: http://www.djcxy.com/p/33349.html

上一篇: Invalid characters in generated latex sources in Doxygen?

下一篇: Haskell singletons: What do we gain with SNat