Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   XML und Umlaute (https://www.delphipraxis.net/167337-xml-und-umlaute.html)

borstenei 24. Mär 2012 21:47

XML und Umlaute
 
Ich brauche hier mal Hilfe, bin echt überfordert!
Ich hole von meinem Receiver mit der Indy Telnet Komponente eine XML mit dem Inhalt der Aufnahmen der dort verbauten Festplatte...funktioniert alles super.
Auch die Verarbeitung der Daten klappt im Programm.
Mein Problem sind die Umlaute!
Ich habe hier schon alles durchforstet, etliche Beispiele gefunden,so richtig weiter bringen sie mich nicht.



Wenn ich z.b.den Inhalt des Memo's speichere wird der Text richtig angezeigt...auch im Browser.

telnetmemo.Lines.SaveToFile('Test.xml');

Jetzt übergebe ich ihn

xmldoc.loadXML(TelnetMemo.Text);

dann speichere ich ihn Testweise noch einmal

xmldoc.save('Test1.xml');

und plötzlich passen die Umlaute nicht mehr...

Auszug aus "Test.xml":

<e2movie>
<e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2servicereference>
<e2title>The Book of Eli</e2title>
<e2description>Action</e2description>
<e2descriptionextended>Eli (Denzel Washington) wandert allein durch die verwüsteten USA. Eine nukleare Katastrophe hat vor 30 Jahren den Großteil der Menschheit vernichtet, die Überlebenden ermorden sich für einen Schluck Wasser. Seitdem sucht Eli den Ort, an dem er mit seinem machtvollen Buch den Grundstein für eine neue Zivilisation legen kann. Doch der diabolische Carnegie (Gary Oldman) will den Text um jeden Preis in seine Gewalt bringen, um ein Schreckensregime aufzubauen. - Stylische Endzeitaction der Regiezwillinge Allen und Albert Hughes.
USA 2009. 114 Min. Von Albert Hughes, mit Denzel Washington, Gary Oldman, Mila Kunis.</e2descriptionextended>
<e2servicename>Sky Action HD</e2servicename>
<e2time>1332232800</e2time>
<e2length>124:56</e2length>
<e2tags></e2tags>
<e2filename>/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2filename>
<e2filesize>7541080064</e2filesize>
</e2movie>

<e2movie>
<e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0135 - Einsfestival - Schimanski_ Asyl.ts</e2servicereference>
<e2title>Schimanski: Asyl</e2title>
<e2description>Fernsehfilm Deutschland 2002</e2description>
<e2descriptionextended>Auf einem Parkplatz in Duisburg machen Schimanski, Hänschen und Hunger eine grausige Entdeckung: In einem verlassenen Container finden sie 24 Tote, Flüchtlinge, die von Schleppern über die Grenze gebracht wurden und erstickt sind.</e2descriptionextended>
<e2servicename>Einsfestival</e2servicename>
<e2time>1332203700</e2time>
<e2length>89:58</e2length>
<e2tags></e2tags>
<e2filename>/hdd/movie/20120320 0135 - Einsfestival - Schimanski_ Asyl.ts</e2filename>
<e2filesize>3635011584</e2filesize>
</e2movie>



Gleiche Stelle aus "Test1.xml" :

<e2movie>
<e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2servicereference>
<e2title>The Book of Eli</e2title>
<e2description>Action</e2description>
<e2descriptionextended>Eli (Denzel Washington) wandert allein durch die verwüsteten USA. Eine nukleare Katastrophe hat vor 30 Jahren den Großteil der Menschheit vernichtet, die Überlebenden ermorden sich für einen Schluck Wasser. Seitdem sucht Eli den Ort, an dem er mit seinem machtvollen Buch den Grundstein für eine neue Zivilisation legen kann. Doch der diabolische Carnegie (Gary Oldman) will den Text um jeden Preis in seine Gewalt bringen, um ein Schreckensregime aufzubauen. - Stylische Endzeitaction der Regiezwillinge Allen und Albert Hughes.
USA 2009. 114 Min. Von Albert Hughes, mit Denzel Washington, Gary Oldman, Mila Kunis.</e2descriptionextended>
<e2servicename>Sky Action HD</e2servicename>
<e2time>1332232800</e2time>
<e2length>124:56</e2length>
<e2tags></e2tags>
<e2filename>/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2filename>
<e2filesize>7541080064</e2filesize>
</e2movie>
<e2movie>
<e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0135 - Einsfestival - Schimanski_ Asyl.ts</e2servicereference>
<e2title>Schimanski: Asyl</e2title>
<e2description>Fernsehfilm Deutschland 2002</e2description>
<e2descriptionextended>Auf einem Parkplatz in Duisburg machen Schimanski, Hänschen und Hunger eine grausige Entdeckung: In einem verlassenen Container finden sie 24 Tote, Flüchtlinge, die von Schleppern über die Grenze gebracht wurden und erstickt sind.</e2descriptionextended>
<e2servicename>Einsfestival</e2servicename>
<e2time>1332203700</e2time>
<e2length>89:58</e2length>
<e2tags></e2tags>
<e2filename>/hdd/movie/20120320 0135 - Einsfestival - Schimanski_ Asyl.ts</e2filename>
<e2filesize>3635011584</e2filesize>
</e2movie>

himitsu 24. Mär 2012 22:05

AW: XML und Umlaute
 
Wenn der XML-Header fehlt (was hier der Fall ist) oder dort keine Kodierung angegeben ist, dann ist die Standardkodierung UTF-8.

Warum nimmt du keine XML-Komponente, um das XML zu lesen?
Ganz im Ernst ... viele dieser Probleme würden sich damit von ganz alleine lösen. :wall:


Tipp:
XML-Code:
        <e2movie>
                <e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2servicereference>
                <e2title>The Book of Eli</e2title>
                <e2description>Action</e2description>
                <e2descriptionextended>Eli (Denzel Washington) wandert allein durch die verwüsteten USA. Eine nukleare Katastrophe hat vor 30 Jahren den Großteil der Menschheit vernichtet, die Überlebenden ermorden sich für einen Schluck Wasser. Seitdem sucht Eli den Ort, an dem er mit seinem machtvollen Buch den Grundstein für eine neue Zivilisation legen kann. Doch der diabolische Carnegie (Gary Oldman) will den Text um jeden Preis in seine Gewalt bringen, um ein Schreckensregime aufzubauen. - Stylische Endzeitaction der Regiezwillinge Allen und Albert Hughes.
USA 2009. 114 Min. Von Albert Hughes, mit Denzel Washington, Gary Oldman, Mila Kunis.</e2descriptionextended>
                <e2servicename>Sky Action HD</e2servicename>
                <e2time>1332232800</e2time>
                <e2length>124:56</e2length>
                <e2tags></e2tags>
                <e2filename>/hdd/movie/20120320 0940 - Sky Action HD - The Book of Eli.ts</e2filename>
                <e2filesize>7541080064</e2filesize>
        </e2movie>
       
        <e2movie>
                <e2servicereference>1:0:0:0:0:0:0:0:0:0:/hdd/movie/20120320 0135 - Einsfestival - Schimanski_ Asyl.ts</e2servicereference>
                <e2title>Schimanski: Asyl</e2title>
                <e2description>Fernsehfilm Deutschland 2002</e2description>
                <e2desc

borstenei 24. Mär 2012 22:29

AW: XML und Umlaute
 
Ich benutze MSXML2_TLB
..die Verarbeitung klappt ja auch prima..!(wenn da nicht immer die Umlaute wären).

borstenei 24. Mär 2012 22:36

AW: XML und Umlaute
 
Der Header ist schon vorhanden ...
<?xml version="1.0" encoding="UTF-8"?>
aber damit funktioniert es garnicht ...erst wenn ich ich diese Zeile entferne läuft es.(bis auf die Umlaute)

p80286 25. Mär 2012 22:33

AW: XML und Umlaute
 
Zitat:

Zitat von borstenei (Beitrag 1158398)
Ich benutze MSXML2_TLB
..die Verarbeitung klappt ja auch prima..!(wenn da nicht immer die Umlaute wären).

Erinnert mich an den Mann, der im 20. Stockwerk aus dem Fenster springt. Als er am 2. Stock vorbeikommt, denkt er, alles prima klappt ohne Probleme......

Aber im Ernst, jeder Text ist die Interpretation von Numerischen Werten. Und es gibt unterschiedliche Arten dies zu tun ASCII,ANSI,UTF8,HPPCL ....
eine vernünftige Aussage der
vorhandenenen Daten kannst Du nur treffen, wenn Du dir die Hex-Werte anschaust, und dabei den XML-Header nicht ausser acht läßt.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz