如何使用 libxml2 将 XML 保存到文件 (filename.xml)?
我已经使用 " --with-minimum -with--schemas "
开关(配置选项)配置了 libxml2。 我正在使用“xmlNewNode”“xmlAddChild”等函数来生成XML 文件。 现在,我想将 XML 保存到文件中,但我没有找到任何函数来执行此操作。
当然,“libxml2 完整版”中有很多函数(如 xmlSaveFile() 等..),但正如我所说,我已经使用 --minimum
配置选项对其进行了配置(b/c内存限制)。
有谁帮忙吗? 谢谢 !
I've configured libxml2 with " --with-minimum -with--schemas "
switches (configuration options).
I am using "xmlNewNode" "xmlAddChild" etc. functions to generate the XML file.
Now, i want to save the XML to a file, but i didn't find any function to do that.
Of-course, there are plenty of functions (like xmlSaveFile() etc..) in "libxml2 full version" BUT as i said i've configured it with --minimum
configuration option (b/c of memory constraints).
Any one with help ?
Thanks !
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
xmlDocDumpMemory 可以让您以 xmlChar* 的形式获取 xml 文档
xmlChar *xmlbuff;
int 缓冲区大小;
xmlDocDumpFormatMemory(doc, &xmlbuff, &buffersize, 1);
之后您可以使用将其保存为文件
<代码>
文件 *fp;
fp = fopen(文件, "w+");
如果(!fp){
printf("无法打开文件进行写入\n");
返回;
}
fprintf(fp, buf);
fclose(fp);
xmlDocDumpMemory will let you get the whoe xml doc as a xmlChar*
xmlChar *xmlbuff;
int buffersize;
xmlDocDumpFormatMemory(doc, &xmlbuff, &buffersize, 1);
after which you can save it as a file using
FILE *fp;
fp = fopen(file, "w+");
if(!fp){
printf("Could not open file for writing\n");
return;
}
fprintf(fp, buf);
fclose(fp);