J'utilise la méthode PHP SimpleXML pour travailler avec des fichiers XML sur mon serveur. J'ai seulement besoin de lire le contenu du XML (je n'ai pas besoin de le modifier) donc je me suis contenté de SimpleXML simple et facile à utiliser. Mais SimpleXML a des problèmes pour lire un certain fichier XML parce qu'il a des caractères très étranges. J'obtenir les erreurs suivantes:Comment supprimer des caractères illégaux d'un fichier xml?
Warning: simplexml_load_file() [function.simplexml-load-file]: data/data.xml:348: parser error : PCDATA invalid Char value 3 in C:\xampp\htdocs\VMP\xintel\analyzer.php on line 54 Warning: simplexml_load_file() [function.simplexml-load-file]: Jardin al fte. Hall de recepcion, amplio living comedor. ocina comedor diario c in C:\xampp\htdocs\VMP\xintel\analyzer.php on line 54
Je ne contrôle pas ce qui se passe dans le fichier XML, donc je ne peux pas arrêter ces caractères d'être ajoutés au fichier. En outre, je ne sais pas comment résoudre ce problème. Le fichier est censé être encodé en utf-8. J'ai donc essayé des choses comme le décodage de l'UTF-8 à l'ISO-8859-1 et inversement, mais rien ne se passe.
Quelqu'un peut-il m'aider? Dois-je essayer de changer l'encodage? Dois-je essayer d'enlever ces caractères? N'importe quoi?
Edit: Les caractères stangre sont tous les caractères de boîte dessin (voir: http://en.wikipedia.org/wiki/Box-drawing_characters)
Mettez-les en prison! : V – Sneakyness
Si le fichier contient des caractères XML illégaux, il ne s'agit pas d'un fichier XML et l'utilisation d'un analyseur XML ne vous aidera pas. – skaffman
Eh bien, je peux voir que les caractères illégaux plantent l'analyseur XML. – VinkoCM