0
我通過使用libxml2.0解析xml文件,代碼如下。未能加載外部實體xml文件
我收到錯誤,因爲無法加載外部實體。
xmlDocPtr xmlDocumentPtr = xmlParseFile(inXMLFilePath.c_str());
我得到空指針xmlDocPtr xmlDocumentPtr;
這可能是什麼原因?
我通過使用libxml2.0解析xml文件,代碼如下。未能加載外部實體xml文件
我收到錯誤,因爲無法加載外部實體。
xmlDocPtr xmlDocumentPtr = xmlParseFile(inXMLFilePath.c_str());
我得到空指針xmlDocPtr xmlDocumentPtr;
這可能是什麼原因?
XML是否有DTD?可以通過引用URI來嵌入或包含DTD。錯誤意味着DTD有一個外部實體,libxml2找不到它的定義。檢查DTD是否爲<!ENTITY entity_name ...>
。實體聲明可能引用無法找到的URI。
另一種可能性是XML在任何DTD中引用沒有聲明的實體,例如, &entity_name;
出現在XML中,但沒有相應的<!ENTITY entity_name ...>
聲明。
此外,錯誤消息應具有實體的名稱或DTD之後的DTD的URI。做到了?
現在它已修復。只是錯過了文件路徑。 – boom 2010-12-10 04:12:09