J'ai besoin d'insérer du contenu HTML dans un document XML. Est-ce possible ou le contenu HTML doit-il par exemple être codé en BASE64 ou avec quelque chose d'autre?
Réponses
Trop de publicités?Vous pouvez inclure du contenu HTML. Une possibilité consiste à l'encoder dans BASE64 comme vous l'avez mentionné.
Une autre pourrait utiliser les balises CDATA
.
Exemple utilisant CDATA
:
<xml>
<title>Your HTML title</title>
<htmlData><![CDATA[<html>
<head>
<script/>
<head>
<body>
Your HTML's body
</body>
</html>
]]>
</htmlData>
</xml>
Notez s'il vous plaît:
Séquence de caractères d'ouverture de CDATA: <![CDATA[
Séquence de caractères de fermeture de CDATA: ]]>
Le codage BASE64 a pour but de prendre des données binaires et de les conserver dans une chaîne. Cet avantage a un coût, une augmentation de la taille du résultat (je pense que c'est un ratio de 4 à 3). Il y a deux solutions. Si vous savez que les données seront du XML bien formé, incluez-le directement. L’autre option, plus intéressante, consiste à inclure le code HTML dans une section CDATA d’un élément du code XML.