2字节UTF-8序列的无效字节2 [英] invalid byte 2 of 2-byte UTF-8 sequence

查看:142
本文介绍了2字节UTF-8序列的无效字节2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试解析XML文件,但遇到错误消息2字节UTF-8序列的无效字节2。有人知道是什么导致了这个问题吗?谢谢。


最常见的是由于提供ISO-8859-x(Latin-x,如Latin-1),但解析器认为它正在获得UTF-8。某些序列拉丁语1个字符(两个连续字符,带有重音符号或变音符号)形成无效的UTF-8,特别是基于第一个字节,第二个字节有意外的高位位。



当某些进程使用Latin-1转储XML时,可能很容易发生这种情况,但是要么忘记输出XML声明(在这种情况下,XML解析器必须默认为UTF-8,按照XML规范)或索赔即使没有,也是UTF-8。


I am trying to parse an XML file with , but ran into an error message "invalid byte 2 of 2-byte UTF-8 sequence. Does anybody know what caused this problem? Thanks.

解决方案

Most commonly it's due to feeding ISO-8859-x (Latin-x, like Latin-1) but parser thinking it is getting UTF-8. Certain sequences of Latin-1 characters (two consecutive characters with accents or umlauts) form something that is invalid as UTF-8, and specifically such that based on first byte, second byte has unexpected high-order bits.

This can easily occur when some process dumps out XML using Latin-1, but either forgets to output XML declaration (in which case XML parser must default to UTF-8, as per XML specs), or claims it's UTF-8 even when it isn't.

这篇关于2字节UTF-8序列的无效字节2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆