Ich muss HTML-Inhalte in ein XML-Dokument einfügen. Ist dies möglich oder sollten HTML-Inhalte beispielsweise in BASE64 oder mit so etwas anderem codiert werden?
77
Sie können HTML-Inhalte einfügen. Eine Möglichkeit besteht darin, es in BASE64 zu codieren, wie Sie bereits erwähnt haben.
Ein anderer könnte CDATA
Tags verwenden.
Beispiel mit CDATA
:
<xml>
<title>Your HTML title</title>
<htmlData><![CDATA[<html>
<head>
<script/>
</head>
<body>
Your HTML's body
</body>
</html>
]]>
</htmlData>
</xml>
Bitte beachten Sie:
CDATAs Eröffnungszeichenfolge: <![CDATA[
CDATAs abschließende Zeichenfolge: ]]>
Solange Ihr HTML-Inhalt kein
CDATA
Element enthalten muss , können Sie den HTML-Code in einemCDATA
Element enthalten. Andernfalls müssen Sie den XML-Entitäten entkommen.<element><![CDATA[<p>your html here</p>]]></element>
VS
<element><p>your html here</p></element>
quelle
Der Zweck der BASE64-Codierung besteht darin, Binärdaten aufzunehmen und diese in einer Zeichenfolge zu speichern. Dieser Vorteil ist mit Kosten verbunden, einer Vergrößerung des Ergebnisses (ich denke, es ist ein Verhältnis von 4 zu 3). Es gibt zwei Lösungen. Wenn Sie wissen, dass die Daten gut geformtes XML sind, fügen Sie sie direkt hinzu. Die andere, bessere Option besteht darin, den HTML-Code in einen CDATA-Abschnitt innerhalb eines Elements innerhalb des XML-Codes aufzunehmen.
quelle
Bitte sehen Sie dies.
Text in einem CDATA-Abschnitt wird vom Parser ignoriert.
http://www.w3schools.com/xml/dom_cdatasection.asp
Dies wird Ihnen helfen, die Grundlagen von XML zu verstehen
quelle