我正在寻找如何通过C libexpat和Linux解析XML文件。我正在寻找解析不会将整个文件内容加载到内存中,我希望解析是通过逐行读取xml文档来完成的。
有没有人可以使用expat提出方法?
提前感谢您的帮助
答案 0 :(得分:1)
XML_Parse就是这么做的。请参阅以下示例代码:
actual_size = fread(xmlData, 1, 32, fp);
while (actual_size > 0) {
if (XML_Parse(parser, xmlData, actual_size, 0) == XML_STATUS_ERROR) {
printf("%s at line %l\n",
XML_ErrorString(XML_GetErrorCode(parser)),
(long) XML_GetCurrentLineNumber(parser));
return 1;
}
actual_size = fread(xmlData, 1, 32, fp);
}