Supprimer tous les caractères hexadécimaux avant de charger la chaîne dans l'objet de document XML?
J'ai une chaîne xml qui est posté à un ashx gestionnaire sur le serveur. La chaîne xml est construit sur le côté client et est basé sur un peu différentes entrées dans un formulaire. Parfois certains utilisateurs de copier et coller à partir d'autres sources dans le formulaire web. Quand j'essaye de charger la chaîne xml dans un XMLDocument
objet à l'aide de xmldoc.LoadXml(xmlStr)
- je obtenir de l'exception suivante:
System.Xml.XmlException = {"'', hexadecimal value 0x0B, is an invalid character. Line 2, position 1."}
En mode debug, je vois le voleur de caractères (désolé, je ne suis pas sûr du titre officiel?):
Ma questions est de savoir comment puis-je nettoyer la chaîne xml avant d'essayer de le charger dans l'objet XMLDocument? Ai-je besoin d'une fonction personnalisée d'analyser toutes ces sortes de caractères un par un, ou puis-je utiliser des indigènes .NET4 classe pour les supprimer?
source d'informationauteur QFDev
Vous devez vous connecter pour publier un commentaire.
Ici vous avez un exemple pour nettoyer xml non valide caractères à l'aide de
Regex
:Un moyen plus efficace pour pas d'erreur sur les caractères XML non valides serait d'utiliser la CheckCharacters drapeau dans XmlReaderSettings.