XML Speichern Encoding Problem

N

needblue

Hallo zusammen,

ich habe ein XDocument und schreibe es so:
Code:
using (var filestream = File.Open(saveFolder, FileMode.Create))
            {
                var settings = new XmlWriterSettings { Indent = true, OmitXmlDeclaration = true };

                using (var writer = XmlWriter.Create(filestream, settings))
                {
                    if (writer != null)
                    {
                        document.WriteTo(writer);
                    }
                }
            }

in eine Datei. Was auch funktioniert. Das problem ist, dass
die Werte der Elemente so aussehen:

Code:
<Text>  &lt;div&gt;Customer</Text>

Ich vermute es ist ein Encoding problem. Aber ich komme nicht dahinter wie ich es ändern kann.
Hoffe jmd von euch kann mir helfen.
Danke im Vorraus!
 
Hi.

Nein, das ist kein Encoding Problem.

Du hast in dein Dokument den Text " <div>Customer" eingefügt. Wenn du dort ein Element kreieren möchtest mußt du einen "div" XMLElement erstellen usw.

Zeig den relevanten Code.

Gruß
 
Zuletzt bearbeitet:
Hey,

erstmal vielen Dank für die super schnelle Antwort.

Das Problem ist ich bekomme die XML datei schon so, wandel sie um und schreibe sie dann auf die platte.
Genauer gesagt wird die XML aus SharePoint exportiert (meine Erfahrung mit SharePoint hält sich sehr stark in Grenzen).

Die eine Sache die es hervorrufen könnte ist, wenn es sich um Links handelt. Aber auch so habe ich
Code:
 <MetaInfo>1;#</MetaInfo>
solche Elemente.
 
Das Problem ist ich bekomme die XML datei schon so, wandel sie um und schreibe sie dann auf die platte.
Genauer gesagt wird die XML aus SharePoint exportiert (meine Erfahrung mit SharePoint hält sich sehr stark in Grenzen).
Dann stehen die Daten entweder bereits so im XML Dokument drin, oder du machst einen Fehler beim Umwandeln.

Gruß
 
Ja ich bekomme sie schon so mit den zeichen.

Ist es mögliche die Element werte so zu formatieren das sie umgewandelt werden? Außer durch die ganze XML zu gehen und die Zeichen zu ersetzen?

Danke
 
Ja ich bekomme sie schon so mit den zeichen.

Ist es mögliche die Element werte so zu formatieren das sie umgewandelt werden? Außer durch die ganze XML zu gehen und die Zeichen zu ersetzen?
Nein, automatisch ist es nicht möglich da diese Zeichen in XML nicht als PCDATA vorkommen dürfen. Und eine automatische Umwandlung in XML Elemente gibt es nicht. (ist auch schlecht möglich, da das Dokument dadurch evlt. invalide werden kann).

Du könntest natürlich manuell umwandeln, allerdings weißt du ja nicht ob die Zeichen nun eigentlich zu Tags gehören oder literal so im Text stehen sollen.

Am besten wäre es das Problem an der Wurzel zu bekämpfen.

Gruß
 
Ja da hast du Recht eigentl ziemlich logisch.....

heute ist nicht mein Tag. Danke vielmals.

Problem bei der Wurzel packen? Ich hab nicht genug Geld für nen Ticket nach Redmond ;-).
 

Neue Beiträge

Zurück