2016-11-07 72 views
0

我特林验证我.xml.rng,但我一直在我的RNG文件收到此错误RELAX NG解析错误

parser error : Input is not proper UTF-8, indicate encoding ! 
Bytes: 0xEA 0x63 0x68 0xE9 
      <name>Ev▒ch▒ of Seeet Di▒</name> //here the original word is Evéchç of seeet diè 
        ^
myfile.xml:33: parser error :  Entity 'nbsp' not defined 
      <name>SCIEF&nbsp; Toto</name> 

<?xml version="1.0" encoding="UTF-8"?> 

回答

0

的字节序列0xEA 0x63 0x68 0xE9是 “êché” 在ISO -8859-1(和其他的字符集),所以它似乎引用的部分来源的第一个字实际上是“Evêché”? (不是“Evéchç”...)

在UTF-8中,êché的字节为0xC3 0xAA 0x63 0x68 0xC3 0xA9

所以它似乎没有实际编码为UTF-8,而是ISO-8859-1或其他东西?

如果是这样,则必须将XML声明更改为<?xml version="1.0" encoding="ISO-8859-1"?>或源需要转换为UTF-8(例如,使用iconv)。

至于关于&nbsp;的错误,那是因为它是HTML字符引用,并没有为任意XML文档定义。只需将其替换为&#160;&#xA0;,该错误将消失。