如何使用libxml2生成XML文件?

3

我从xmlsoft.org下载了libxml2。我用它来解析一个xml文件。现在我想使用相同的libxml创建自己的xml文件,就像这样...

<?xml version="1.0"?>
<Powersettings>
<PowerScheme>Testing</PowerScheme>
<CPUSpeed>Adaptive</CPUSpeed>
<Screensaver>No</Screensaver>
<LockScreentime>0</LockScreentime>
<Shutdownflag>Yes</Shutdownflag>
<DownloadsFlag>No</DownloadsFlag>
<PPasswordprotected>No</PPasswordprotected>
<Appsensorname>(None)</Appsensorname>
</Powersettings>

我正在使用gcc编译器和C语言编写程序,所有数据都在一个结构中。我正在寻找一个好的教程或示例程序,使用libxml2创建上述xml文档。有什么帮助吗?
1个回答

4

基于http://xmlsoft.org/examples/testWriter.c--免责声明:我从未使用过libxml2,也没有对其进行测试,且没有错误检测:

xmlTextWriterPtr writer;
writer = xmlNewTextWriterFilename("test.xml", 0);
xmlTextWriterStartDocument(writer, NULL, "UTF-8", NULL);
xmlTextWriterStartElement(writer, "Powersettings");
xmlTextWriterWriteElement(writer, "PowerScheme", "Testing"); xmlTextWriterEndElement(writer);
xmlTextWriterWriteElement(writer, "CPUSpeed", "Adaptive"); xmlTextWriterEndElement(writer);
/* ... etc ... */
xmlTextWriterEndElement(writer);
xmlTextWriterEndDocument(writer);
xmlFreeTextWriter(writer);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接