Announcement

Collapse
No announcement yet.

XML und externe Daten

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XML und externe Daten

    Hallo,

    ich habe folgendes XML zum Anzeigen:

    <pre>
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="log4net.xsl"?>
    <!DOCTYPE events [<!ENTITY data SYSTEM "debug.log">]>
    <events>
    &data;
    </events>
    </pre>

    Dieses funktioniert wunderprächtig. Aus einer externen Datei (Datenklumpen) werden Daten angezeigt. Die externen Daten sehen so aus:

    <pre>
    <event logger="LogTest.FormMain" timestamp="2006-01-06T16:19:49.5649667+01:00" level="INFO" thread="3828" domain="LogTest.exe" username="Ernie und Bert"><message>Info geschrieben</message></event>
    </pre>

    Von solchen Einträgen stehen mehrere 100 untereinander. Ich habe keine Möglichkeit, an diesem generiert File irgendetwas zu ändern.
    Wenn nun z.B. im Attribut "Info" ein Zeichen wir ÄÖÜ auftaucht, geht mein XML nicht mehr.
    Gibt es eine Möglichkeit das erst genannte XML, welches zum Anzeigen dient, so umzubauen, dass in dem Datenklumpen auch Zeichen wie ÄÖÜ stehen dürfen?

    Für einen Tip wäre ich sehr dankbar.

    Chris

  • #2
    Hi Chris,

    Welche Codierung besitzt denn das Logfile? Am besten wäre es, wenn Du die Dateien (Logfile, XML-File und XSL-File) an das Posting anhängst. Zum einen kommt das Forum nicht mit den Tags zurecht, zum anderen scheint das ein Problem mit der Codierung zu sein und ist nur anhand der Syntax schlecht nachvollziehbar.

    Viele Grüße

    Martin
    www.aboutxml.d
    Martin Szugat
    www.aboutxml.de

    Comment


    • #3
      Hi Martin,

      Danke für das Interesse. Ich krebse mit dem Problem schon ewig rum. Immer wen ich ins Logfile schaue ärgere ich mich ...

      XML und die XSL sind UTF8.

      Das ganze dreht sich um log4net. Ich hab mal das XML, XSL und das Logfile drangehangen. Zusätzlich noch das Configfile, welches den Logger beschreibt.

      Chri

      Comment


      • #4
        Hi Chris,

        Also das erste Problem ist schon mal, dass die Datei Debug.log als ISO 8859-15 ("ANSI") codiert ist und eben nicht wie im Prolog angegeben als UTF-8. D.h. entweder muss der Prolog wie folgt geändert werden:

        &lt;?xml version="1.0" encoding="ISO-8859-15"?&gt;

        Oder die Datei muss von ISO 8859-15 nach UTF-8 konvertiert werden. Da gibt es sicherlich irgendwelche Kommandozeilentools, die das automatisierbar machen. Ich habe dafür den Editor Textpad verwendet.

        Das zweite Problem ist, dass das Stylesheet nicht spezifiziert, wie die HTML-Datei codiert werden soll. Indem Du folgende Zeile hinter das xsl:stylesheet-Element einfügst, wird auch die HTML-Datei mit ISO 8859-15 codiert und damit lassen sich dann die Umlaute richtig darstellen:

        &lt;xslutput method="html" encoding="ISO-8859-15" indent="yes"/&gt;

        Summasummarum: log4net baut ne Menge Sch...marn.

        Beste Grüße

        Marti
        Martin Szugat
        www.aboutxml.de

        Comment

        Working...
        X