Sto tentando di analizzare un file XML con, ma ho eseguito un messaggio di errore "byte 2 non valido della sequenza UTF-8 a 2 byte. Qualcuno sa cosa ha causato questo problema ? Grazie.byte non valido 2 della sequenza UTF-8 a 2 byte
risposta
o il parser è fissata per UTF-8, anche se il file è codificato in caso contrario, o il file è dichiarata come usando UTF-8, ma in realtà non è così.
più comunemente è a causa di alimentazione ISO-8859-x
(Latin-x, come Latin-1) ma parser che pensa che sta ottenendo UTF-8
. Alcune sequenze di caratteri Latin-1 (due caratteri consecutivi con accenti o dieresi) formano qualcosa che non è valido come UTF-8
, e in particolare tale basato su prima b Sì, il secondo byte ha bit inaspettati di ordine superiore.
Questo può facilmente verificarsi quando un processo discariche fuori XML
utilizzando latino-1, ma sia dimentica di uscita XML
dichiarazione (nel qual caso XML
parser deve imposterà UTF-8
, secondo XML
specifiche), o sostiene è UTF-8
anche quando non lo è.
Qualche suggerimento su come risolverlo? Mi sono imbattuto in questo problema durante la definizione di un'attività ant che utilizza la libreria XMLTask di terze parti. – AgentKnopf
Questo è difficile allora; in caso contrario, solitamente viene creato un InputStreamReader per la codifica specifica, quindi assegnarlo al parser XML. Ma non sono sicuro di cosa fare con Ant ... a parte riparare il file XML stesso, se possibile. – StaxMan
Ho capito il problema - In uno dei miei xml ho avuto un Umlaut (ä, ö, ü) che in qualche modo si è rovinato quando ho convertito il file xml in diversi formati. Una volta rimosso Umlaut, ha funzionato. – AgentKnopf
Si potrebbe provare a cambiare la codifica dei caratteri predefinita utilizzata da String.getBytes() in utf-8. Usa l'opzione VM -Dfile.encoding = utf-8.
Ho avuto lo stesso problema. Il mio problema era che ho creato un nuovo file XML con jdom e il file FileWriter (xmlFile). FileWriter non è stato in grado di creare un file UTF-8. Invece di usare FileOutputStream (xmlFile) risolto.
Per coloro che continuano a commettere questo errore.
dal UTF-8 è in uso del check out il documento XML per tutte le lettere latine o giù di lì: ho avuto lo stesso problema e il motivo è che ho avuto questo:
<n:name>Åke Jógvan Øyvind</n:name>
Spero che questo aiuti
Ho avuto lo stesso problema anche quando provavo ad importare il mio file .xml nel mio strumento java. E ho trovato una buona soluzione per questo: 1. Apri il file .xml con Notepad ++ quindi salva il file .xml come file .rtf. Quindi apri questo file nell'applicazione WordPad. 2. Salvare il file .rtf come file .txt, quindi aprirlo con Blocco note e salvarlo nuovamente come file .xml. Quando si salva in Blocco note, vicino alla fine della finestra pop-up, assicurarsi di scegliere l'opzione "Codifica: UTF-8". Ha funzionato per il mio, spero che sia utile anche per il tuo.
- 1. MalformedByteSequenceException: byte 2 non valido della sequenza UTF-8 a 2 byte
- 2. org.xml.sax.SAXParseException: byte 2 non valido della sequenza UTF-8 a 3 byte
- 3. da 2 byte a short java
- 4. Byte Java non firmato [2] su int?
- 5. 2 pari byte [] non restituisce vero
- 6. Errore di sequenza byte non valido in fase di normalize_yaml_input?
- 7. byte UTF8 [] per conversione stringhe
- 8. Come risolvere byte non valido 1 di 1 byte UTF-8 sequenza
- 9. Android: ci vogliono davvero 2 byte?
- 10. Converti 2 byte in un numero
- 11. Converti int con firma a 16 bit a 2 byte?
- 12. Converti 2 byte in un numero intero
- 13. Postgres ripristinare dal file .dump: sequenza di byte non valido per la codifica "UTF-8"
- 14. Perché DataOutputStream.writeUTF() aggiunge altri 2 byte all'inizio?
- 15. Ruby 2.2: PG :: CharacterNotInRepertoire: ERRORE: sequenza di byte non valida per la codifica "UTF8"
- 16. Sottostringa o carattere Metodo per stringhe UTF8 con 2+ byte in JAVA
- 17. Come dividere un intero in binario a 2 byte?
- 18. algoritmo di hash in C per mappa 16 byte valori a 2 byte valori
- 19. PostgreSQL + PHP + UTF8 = sequenza di byte non valida per la codifica
- 20. IS NULL valido JSON (4 byte, nient'altro)
- 21. Errore Postgres su insert - ERRORE: sequenza byte non valida per la codifica "UTF8": 0x00
- 22. Postgresql sequenza di byte non valida PHP per la codifica UTF8
- 23. UnicodeDecodeError: codec 'utf8' non può decodificare byte "0xc3"
- 24. ruby, `match ': sequenza byte non valida in UTF-8
- 25. java -Xmx1G significa 10^9 o 2^30 byte?
- 26. Supporto per Python 2 e 3: str, byte o alternativa
- 27. Byte chunking (senza stringhe) in Python 2 e 3
- 28. Golang convertire tipo byte [N] a [] byte
- 29. C# - Converti byte non sicuri * in byte []
- 30. Da [] byte a char *
come stai analizzando il file xml? – jtahlborn