Frage

Ich leite Doxygen (1.5.8) auf einem C# -Projekt aus Visual Studio 2008 auf einem Windows -Computer mit XP aus. Beim Generieren des Latex -Code sind einige illegale Sequenzen enthalten. Es beinhaltet immer die folgende Sequenz: "ï» ¿"(eine Latein-I mit einer Dierese, so etwas wie der Binärverschiebungsoperator und eine spanische offene Frage). Ich habe gesehen, dass es im Kontext "ï» ¿verwendet { bf System} ", aber vielleicht gibt es andere.

Die generierte Latex -Datei liest sich

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

Während die Quelle einfach ist:

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

Einige seltsame Windows -BOF -Charaktere? Es scheint nur vor dem benutzten System zu sein; Richtlinie (die erste von jeder Datei).

War es hilfreich?

Lösung



Das ist eine ISO-8859-1-Darstellung des UTF-8-Codierten u+feff, der Byte-Bestellmarke. Die BOM ist für die Verwendung als erster Codepunkt in UTF-16-Dateien vorgesehen und sollte nicht in UTF-8-Dateien verwendet werden, aber es gibt einige sehr dumme Tools, die sie leider standardmäßig erzeugen. Und wenn Sie Dateien erstellen, indem Sie Textbits aus anderen Dateien verkettet, können Sie sogar Boms in der Mitte Ihres Dokuments erhalten.

Finden Sie den Editor, der Dateien als „UTF-8 mit BOM“ speichert, und verbrennen Sie ihn.

ETA RE Aktualisierte Frage:

ï »¿Verwenden Sie { bf System}

Während die Quelle einfach ist:

mit System verwenden;

Überprüfen Sie diese Quelle in einem HEX-Editor für ein verstecktes Faux-Bom vor der "Verwendung".

Andere Tipps

Es sieht für mich wie ein Charakter -Codierungsproblem aus.

Diese Drei-Charakter-Sequenz ist die Marke Unicode-Byte-Ordnung 0xfeff In UTF-8 codiert, obwohl ich nicht sicher bin, warum die Byte-Ordnung-Marke in der Mitte Ihrer Dokumentation auftauchen würde ... das könnte von Bedeutung sein oder nur ein Zufall.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top