Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Qt-xmlWriter/xmlReader_C++_Xml_Qt_Xml Serialization_Unmanaged - Fatal编程技术网

C++ Qt-xmlWriter/xmlReader

C++ Qt-xmlWriter/xmlReader,c++,xml,qt,xml-serialization,unmanaged,C++,Xml,Qt,Xml Serialization,Unmanaged,我想使用Qt编写和读取xml文件。是否有一个简单的示例代码,可以动态生成XML文件 我发现了一些Qt-xml类,但是有人知道它们的用途吗?有没有一个简单的例子可以使用这些类 QtXml Module (http://doc.qt.nokia.com/latest/qtxml.html) QXmlStreamReader (http://doc.qt.nokia.com/4.7/qxmlstreamreader.html) QXmlStreamWriter (http://doc.qt.nokia

我想使用Qt编写和读取xml文件。是否有一个简单的示例代码,可以动态生成XML文件

我发现了一些Qt-xml类,但是有人知道它们的用途吗?有没有一个简单的例子可以使用这些类

QtXml Module (http://doc.qt.nokia.com/latest/qtxml.html)
QXmlStreamReader (http://doc.qt.nokia.com/4.7/qxmlstreamreader.html)
QXmlStreamWriter (http://doc.qt.nokia.com/4.7/qxmlstreamreader.html)

我编写了一个托管C++代码,但我的问题是,这个代码(使用/CLR所需)不支持VisualStudio 2010中的智能感知。现在我试着找到另一种选择。如果有人知道一些功能几乎相同的东西,那么只使用非托管代码就太完美了


此外,我发现了这一点,但并不知道如何使用它:

如果您打算解析小xml文件,最简单的方法是使用QDomDocument类,请参阅下面的示例“使用Qt4进行C++GUI编程,第二版”

QFile文件(文件名);
QString-errorStr;
国际联络线;
int ERROR列;
QDOM文件文档;
如果(!doc.setContent(&file,false,&errorStr,&errorLine),
&错误(列){

谢谢你的回答

我找到了以下使用诺基亚QT生成和读取XML文件的链接:

编写XML文件:

读取XML文件:

这是在写入和读取XML文件时使用的QT类:


前两个链接已断开。
QFile file(filename);
QString errorStr;
int errorLine;
int errorColumn;
QDomDocument doc;
if (!doc.setContent(&file, false, &errorStr, &errorLine,
                    &errorColumn)) {
    std::cerr << "Error: Parse error at line " << errorLine << ", "
              << "column " << errorColumn << ": "
              << qPrintable(errorStr) << std::endl;
    return false;
}
QDomElement root = doc.documentElement();
if (root.tagName() != "bookindex") {
    std::cerr << "Error: Not a bookindex file" << std::endl;
    return false;
}