2016-11-07 59 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;,該錯誤將消失。