non valide octet 2 de 2 octets UTF-8 séquence
j'essaie d'analyser un fichier XML avec <?version = 1.0, encoding = UTF-8>
mais a couru dans un message d'erreur invalid byte 2 of 2-byte UTF-8 sequence
. Quelqu'un sait ce qui a causé ce problème?
6 réponses
le Plus souvent il est dû à l'alimentation ISO-8859-x
(Latin-x, comme Latin-1) mais parser pense que ça devient UTF-8
. Certaines séquences de caractères latins-1 (deux caractères consécutifs avec des accents ou des umlauts) forment quelque chose qui n'est pas valide comme UTF-8
, et spécifiquement tel que basé sur le premier octet, le second octet a des bits inattendus de haut ordre.
Cela peut facilement se produire lorsque certains processus se déverse XML
en utilisant le Latin-1, mais l'un ou l'autre oublie de produire XML
déclaration (en auquel cas XML
analyseur doit par défaut à UTF-8
, par XML
specs), ou prétend que c'est UTF-8
même si ce n'est pas le cas.
soit L'analyseur est défini pour UTF-8 même si le fichier est encodé autrement, soit le fichier est déclaré comme utilisant UTF-8 mais il ne l'est vraiment pas.
vous pouvez essayer de changer l'encodage par défaut utilisé par String.getBytes () à utf-8. Utilisez l'option VM-Dfile.encoding=utf-8.
j'ai eu le même problème. Mon problème est que j'ai créé un nouveau fichier XML avec jdom et le FileWriter (xmlFile). Le FileWriter n'était pas capable de créer un fichier UTF-8. Au lieu d'utiliser le FileOutputStream (xmlFile) résolu.
pour ceux qui ont encore une telle erreur.
depuis UTF-8 est utilisé consultez votre document xml pour toute lettre latine ou ainsi: J'ai eu le même problème et la raison était que j'avais ceci:
<n:name>Åke Jógvan Øyvind</n:name>
Espérons que cette aide
j'ai eu le même problème lorsque vous essayez d'importer mon .le fichier xml dans mon outil java. Et j'ai trouvé une bonne solution pour ce: 1. Ouvert le .fichier xml avec Notepad++ puis Enregistrer le .fichier xml .fichier rtf. Puis ouvrez ce fichier dans L'application WordPad. 2. Enregistrer la .fichier rtf .txt fichier, puis l'ouvrir avec le bloc-notes et enregistrer en tant que .fichier xml de nouveau. Lors de l'enregistrement dans le bloc-notes, près de la fin de la fenêtre pop-up, assurez-vous de choisir l'option "Encoding: UTF-8". Il a travaillé pour le mien, j'espère que c'est utile pour le vôtre trop.