Le chargement de données xml avec le codage UTF 16 à l'aide de XDocument
Je suis en train de lire le document xml à l'aide de XDocument méthode .
mais j'obtiens une erreur lorsque le xml a
<?xml version="1.0" encoding="utf-16"?>
Quand j'ai enlevé l'encodage manuel.Il fonctionne parfaitement.
J'obtiens l'erreur " Il n'est pas Unicode marque d'ordre des octets. Impossible de passer en Unicode. "
j'ai essayé de chercher et j'ai atterri ici-->
Mais n'a pas pu résoudre mon problème.
Mon code :
XDocument xdoc = XDocument.Load(path);
Des suggestions ??
merci.
Vous devez vous connecter pour publier un commentaire.
Il ressemble le fichier que vous essayez de lire n'est pas codé en Unicode. Vous pouvez reproduire le comportement en essayant d'ouvrir un fichier encodé en ANSI avec l'encodage dans le fichier XML spécifié comme
utf-16
.Si vous ne pouvez pas vous assurer que le fichier est encodé correctement, vous pouvez lire le fichier dans un cours d'eau (laisser le
StreamReader
détecter l'encodage) et ensuite créer leXDocument
:J'ai essayé et trouvé un autre moyen de le faire !!
Ce code:
retourne un tableau de chaînes de caractères.
Le code correct est: