0

我有一个巨大的 Xml 文件,它的元素可以是重复的,并且可以包含许多子元素。我需要一个通用代码,它可以读取所有元素及其子元素而无需硬编码。注意:只能使用 QXmlStreamReader ,不能使用 QDomDocument。谢谢 !!

while (!reader.atEnd())
        {
            QString nodename;

            if (reader.isStartElement())///check if the element has chlid tags
            {
                        nodename = reader.name().toString();
                qDebug() << "NodeName is : " << nodename;
                nodevalue = reader.text().toString();
                qDebug() << "NodeValue is : " << nodevalue;
                p_rootParent->CreateChildElement(nodename,reader.text().toString());

            }
            else
            {
                while (reader.readNextStartElement())
                {
                    nodename = reader.name().toString();
                    qDebug() << "NodeName is : " << nodename;
                    nodevalue = reader.text().toString();
                    qDebug() << "NodeValue is : " << nodevalue;
                    p_rootParent->CreateChildElement(nodename, reader.text().toString());
                }
            }
        }

这是我到目前为止编写的代码,但它不起作用,任何帮助将不胜感激。

4

0 回答 0