1: | <?xml version="1.0" encoding="UTF-8"?> |
1: | <my:page xmlns:my="WasIchEbenAlsDritterArgumentÜbergebe"> |
![]() ![]() |
Tja, an sowas hat wohl niemand bei MS gedacht ;) . Ich würde den Namespace per Regex entfernen oder mit Reflection mein Glück versuchen, wahrscheinlich XmlTextWriter.AddNamespace. |
1: | public static string ReplaceXmlSpecialChars(this string me) |
1: | result += "" + ((int)chr).ToString() + ";"; |
1: | StringBuilder result = new StringBuilder(me.Length); |
![]() ![]() | ||
Ich glaube, dass es einfach so geht: C#-Quelltext
Es muss lediglich der Zahlenwert des betreffenden Zeichens genommen werden. |
![]() ![]() | ||
Übrigens ist "result += " für Strings sehr schlecht: Strings sind unveränderlich; das bedeutet, dass in jedem Durchgang der String komplett neu erzeugt und kopiert werden muss. Das ist nur bei kurzen Strings akzeptabel; bei längeren ist der StringBuilder zu verwenden:
C#-Quelltext
Ich dachte, so etwas weißt du; aber vielleicht hast du jetzt nur auf dein Xml-Problem geachtet. Aber wegen anderer Leser wollte ich das nicht so stehenlassen. |
![]() ![]() |
warum setzt du nicht das Format des XML nicht auf Latin-1 ?
encoding="ISO-8859-1" |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!