`

Qt读写xml

    博客分类:
  • Qt
 
阅读更多
test.xml
<?xml version="1.0" encoding="UTF-8"?>
<Start animinal="cat">
    <book>book1</book>
</Start>


simpleWriter.cpp
#include<QXmlStreamWriter>
#include<QFile>
#include<iostream>
using namespace std;

void writeXML(){
    QFile file("test.xml");
    if(not file.open(QIODevice::ReadWrite))
        return;
    QXmlStreamWriter writer(&file);
    writer.setAutoFormatting(true);
    writer.writeStartDocument();
    writer.writeStartElement("Start");
    writer.writeAttribute("animinal","cat");
    writer.writeTextElement("book","book1");
    writer.writeEndElement();//Start
    writer.writeEndDocument();
    file.close();
}

int main(){
    writeXML();
}



dom读写
dom.xml
<Start animinal="cat">
   <book>book1</book>
</Start>


dom.cpp
#include<QDomDocument>
#include<QDomElement>
#include<QFile>
#include<QTextStream>
#include<iostream>
using namespace std;

void writeDom(){
    QFile file("dom.xml");
    if(not file.open(QIODevice::ReadWrite))
        return;
    QDomDocument doc;
    QDomElement startElem = doc.createElement("Start");
    doc.appendChild(startElem);

    startElem.setAttribute("animinal","cat");

    QDomElement bookElem = doc.createElement("book");
    bookElem.appendChild(doc.createTextNode("book1"));
    startElem.appendChild(bookElem);

    QTextStream out(&file);
    doc.save(out,3);
    file.close();
}

void readDom(){
    QFile file("dom.xml");
    if(not file.open(QIODevice::ReadWrite))
        return;
    QDomDocument doc;
    doc.setContent(&file);
    QDomElement startElem = doc.documentElement();
    cout << "animainal:";
    cout << startElem.attribute("animinal").toStdString() << endl;
    cout << "book:";
    cout << startElem.firstChildElement("book").text().toStdString() << endl;
    file.close();
}

int main()
{
    writeDom();
    readDom();
}

animainal:cat
book:book1


sax读写,就不贴代码了,一般情况下,3,5000行的xml用dom不影响效率
分享到:
评论

相关推荐

    Qt读写Xml文件(QTreeWidget加载显示Xml文件内容;QTreeWidget项导出保存为Xml)

    在本文中,我们将深入探讨如何使用Qt框架进行XML文件的读写操作,特别是在与QTreeWidget结合使用时的实现方式。QTreeWidget是Qt提供的一种用于显示和操作树型结构数据的控件,而XML是一种广泛应用的数据存储和交换...

    Qt读写Xml文件,QTreeWidget显示Xml和导出Xml文件

    通过以上步骤,我们就完成了Qt读写XML文件,使用QTreeWidget显示XML结构,并将QTreeWidget内容导出为XML文件的完整流程。这些功能在许多应用程序中都有广泛的应用,如配置文件管理、数据存储和交换等。理解并掌握...

    QT对XML增删查改读取,节点自定义,键值自定义

    在处理XML数据时,QT提供了一套完善的API,使得开发者能够方便地对XML文档进行创建、读取、修改和删除等操作。本教程将围绕"QT对XML的增删查改读取,节点自定义,键值自定义"这一主题,详细介绍如何利用QT库来处理...

    qt读写xml.zip

    在本案例中,"qt读写xml.zip"是一个压缩包,包含了一些利用Qt库进行XML操作的代码示例。这个压缩包提供了三个静态函数,分别用于创建XML文件、读取XML文件和写入XML文件。 首先,我们来看创建XML文件的功能。在Qt中...

    QT读写XML与Sqlite.zip

    本教程将深入探讨QT如何进行XML读写以及SQLite数据库的使用。 XML(eXtensible Markup Language)是一种标记语言,用于存储和传输数据。QT提供了QDomDocument、QXmlStreamReader和QXmlStreamWriter等类来处理XML...

    Qt读写Xml文件到QTableWidget.rar

    在Qt框架中,XML文件是一种常见的数据存储格式,它具有结构化、易于解析和生成的特点。本教程将详细介绍如何在Qt应用中实现XML文件的读取与写入,并将数据展示到QTableWidget中,以及从QTableWidget中保存回XML文件...

    基于QT实现XML文件读写操作,解析操作

    在QT中处理XML文件,可以方便地进行数据的读取、写入和解析,使得应用程序能够与XML数据进行交互。 首先,我们需要了解QT中的QDomDocument类,它是QT提供的XML解析器,可以用来加载、修改和保存XML文档。使用...

    Qt对xml文档进行 读、写、修改等操作

    #### 四、示例:Qt读写XML文件 接下来,我们将通过一个具体的例子来展示如何使用`QXmlStreamWriter`和`QXmlStreamReader`来实现XML文件的读写操作。 ##### 4.1 Qt写XML文件 ```cpp QFile file("example.xml"); if...

    Qt对XMl的读写,下载即可vs2017编译完成

    Qt是一个跨平台的C++应用程序开发框架,支持多种功能,包括对XML的处理。本教程将详细介绍如何在Qt环境中进行XML文件的读写操作,并提供一个适用于Visual Studio 2017的编译完成的示例代码。 XML文件的结构清晰,...

    QTreeWidget读写Xml功能

    压缩包子文件的文件名称列表中提到的"QtXml"是指Qt提供的一个模块,包含对XML文档的操作支持。主要类有QDomDocument、QDomElement、QDomNode等,它们提供了解析、创建和修改XML文档的功能。 总结来说,QTreeWidget...

    QT xml文件的读写,增减,更新。

    在QT中,XML处理是通过QDomDocument类和相关的辅助类来实现的,这些类提供了对XML文档的读、写、增、删、改等操作。以下是对XML文件操作的详细知识点: 1. **QDomDocument**: 这是QT中的核心XML处理类,用于表示...

    Qt读写XML文档示例程序

    总结来说,Qt提供了一个强大而灵活的XML处理机制,使得在C++应用程序中读写XML文档变得简单易行。通过QDomDocument和相关的QDom类,开发者可以方便地实现XML文档的解析、操作和序列化,从而满足各种数据交换和存储...

    Qt实现xml文件内容的遍历读出

    Qt实现xml文件内容的遍历读出,并演示了递归、虚函数的如何使用

    Qt操作XML文档(增删改查)

    Qt是一个流行的C++跨平台应用开发框架,提供了丰富的库支持XML处理。本篇文章将深入探讨如何在Qt环境下进行XML文档的操作,包括增、删、改、查等常见功能。 首先,Qt中的`QDomDocument`类是用于解析和操作XML文档的...

    Qt对xml文件的增删改查(附带可运行例子)

    在Qt框架中,XML处理是通过QtXml模块实现的,主要涉及`QDomDocument`类以及其他相关类。本文将深入探讨如何使用Qt进行XML文件的增、删、改、查操作,并提供一个可运行的示例,以帮助初学者更好地理解和应用。 XML...

    VS+QT——读写XML文件(含中文字符):从建工程开始

    1.VS中没有.pro文件,怎么添加XML模块的使用。 2.XML中含有中文字符时,在写入XML文件时,如何避免中文乱码。 博客链接:https://blog.csdn.net/qq_28662831/article/details/90264682

    qt xml操作 遍历

    QXmlStreamReader适用于对XML进行轻量级、流式处理,不占用大量内存;而QDomDocument适合于需要频繁查找和修改XML结构的场景。 总之,Qt提供的XML处理工具强大且灵活,能够满足不同场景的需求。通过熟练掌握...

    基于QT封装的XML操作,显示类

    QT作为一个跨平台的C++图形用户界面应用程序框架,提供了对XML的支持,使得开发者能够方便地在QT应用程序中处理XML文档。本篇将详细介绍基于QT的QDomDocument类封装的XML操作和显示类,旨在简化XML文件的读取、修改...

    QTreeWidget实例,项可拖动、可编辑,创建、删除项,Qt读写Xml等

    通过理解并掌握QTreeWidget的使用、XML的读写以及拖放和编辑操作,开发者能够创建出高效且用户友好的GUI应用程序。在实际项目中,还可以根据需求进行更复杂的定制,如添加自定义图标、颜色标记或者使用QTreeWidget...

    QT读取xml文件将所有节点保存到treewidget中

    在QT编程中,XML文件是一种常见的数据存储格式,它具有良好的结构化和可读性。当我们需要在用户界面中展示这些数据时,`QTreeWidget`是一个理想的选择,因为它可以清晰地呈现层次化的数据。本篇文章将深入探讨如何在...

Global site tag (gtag.js) - Google Analytics