使用MSXML4.0 SAX解析xml文件時,經常會出錯:“ERROR:A semi colon character was expected.” 原因就是數據中含有SAX不能正常解析的字符。最常見的就是“&”。
下面的這篇文章,介紹的比較詳細:http://dev.ektron.com/kb_article.aspx?id=13084
在XML中,一個"&"后面必須緊跟一個合法的實體名(valid entity name),之后再跟一個分號(;). For example, &。
如果沒有分號,則會出現這個錯誤:"ERROR:A semi colon character was expected"。常見的原因是URL中用來區分參數的"&"。For example:<param name="link" value="http://www.example.com/page.aspx?a=1&b=2"/>
解決方案:
"&"必須被編碼為&,包括在URL中。當然,在實體名前面的"&"是不用再次編碼的,如&,<,>。For example:<param name="link" value="http://www.example.com/page.aspx?a=1&b=2"/>
NOTE:
只有<,>,",' 和& 是合法的XML 實體名。像HTML的實體名 等,在XML中是沒有定義的。