Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Cannot read second XML element



  • The question is:

    I have the following XML file which I believe is valid XML:

    <?xml version="1.0" encoding="UTF-8"?>
    <Style>3</Style>
    <GameVariant>5</GameVariant>
    

    and have the following code to read it:

    QString settingsFile = settingsDir + "/QBoardSettings.xml";
        QFile file(settingsFile);
        file.open(QIODevice::ReadOnly | QIODevice::Text);
        QXmlStreamReader xmlStreamReader(&file);
        while (xmlStreamReader.readNextStartElement()) {
                QString s = xmlStreamReader.name().toString();
                qDebug(qPrintable(s));
        }
    

    But this code prints only "Style" instead of printing names for both elements. What I am doing wrong? Thanks in advance.



  • Hi @fire_lizard

    Instead of using readNextStartElement() in While loop, use atEnd() method to parse the xml file till end.


Log in to reply