Je désérialise le fichier XML suivant. Utilisation du sérialiseur XML avec VSTS 2008 + C# + .Net 3.5.Echec de la désérialisation XML
Voici le fichier XML.
<?xml version="1.0" encoding="utf-8"?>
<Person><Name>=b?olu</Name></Person>
Voici la capture d'écran pour l'affichage du fichier XML et le format binaire du fichier XML,
alt text http://i25.tinypic.com/e7i844.jpg
alt text http://i25.tinypic.com/23wjnev.jpg
S'il y a des solutions pour accepter ces caractères , ce sera génial! Puisque mon fichier XML est grand, et si de tels caractères sont vraiment invalides et doivent être filtrés, je veux garder le contenu restant du fichier XML après la désérialisation.
Actuellement, la désérialisation XML échoue avec InvalidOperationException et toute l'information du fichier XML est perdue.
En fait, lors de l'ouverture de ce fichier XML dans VSTS, il y a une erreur comme celle-ci, Erreur 1 Caractère '?', La valeur hexadécimale 0xffff est illégale dans les documents XML. Je suis confus car dans la forme binaire, il n'y a pas de valeurs 0xffff.
Des solutions ou des idées?
EDIT1: voici mon code qui est utilisé pour désérialiser fichier XML,
static void Foo()
{
XmlSerializer s = new XmlSerializer(typeof(Person));
StreamReader file = new StreamReader("bug.xml");
s.Deserialize(file);
}
public class Person
{
public string Name;
}
Pourriez-vous également publier le code que vous utilisez pour désérialiser le fichier XML? –
Publié, d'autres idées? :-) – George2
George, publie toujours l'exception complète: la sortie de ex.ToString(). –