在Qt中显示表中文件夹中的数据项(xml)

在Qt中显示表中文件夹中的数据项(xml),qt,Qt,我有个问题。我想将文件夹中的数据项(xml)加载并显示到表中。表单如下所示: <!DOCTYPE dataentry> <subject_details> <Name>Pete</Name> <Surname>Batty</Surname> <Patient_ID>GH34TRM</Patient_ID> <Date>06/11/2019 16:00</Date> &l

我有个问题。我想将文件夹中的数据项(
xml
)加载并显示到表中。表单如下所示:

<!DOCTYPE dataentry>
<subject_details>
 <Name>Pete</Name>
 <Surname>Batty</Surname>
 <Patient_ID>GH34TRM</Patient_ID>
 <Date>06/11/2019 16:00</Date>
</subject_details>

我在一个文件夹中有许多
xml
文件:

QString path = QCoreApplication::applicationDirPath()+"/data/";
示例
xml
(条目1)如下所示:

<!DOCTYPE dataentry>
<subject_details>
 <Name>Pete</Name>
 <Surname>Batty</Surname>
 <Patient_ID>GH34TRM</Patient_ID>
 <Date>06/11/2019 16:00</Date>
</subject_details>

皮特
巴蒂
GH34TRM
06/11/2019 16:00
如果我有多个条目,条目2、条目3、条目4等。 如何解析每个条目中的内容并显示在表中

提前谢谢

  • 创建一个QDirIterator来遍历所有 目录中的文件。您可以添加一个过滤器,使其只显示 对于条目_number.xml格式的文件

  • 使用QXmlStreamReader遍历 XML文件。因为您知道XML文件的格式,所以可以 只需查找您的特定元素

  • 将新条目添加到表中。在这个例子中,我使用了 QTableWidget,因为不清楚您是在使用它还是 QTableView(下次请包括一些您已经拥有的代码)

  • 根据需要设置表格的格式

  • main window.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include <QDebug>
    #include <QFile>
    #include <QDirIterator>
    #include <QXmlStreamReader>
    #include <QMessageBox>
    
    
    QT_BEGIN_NAMESPACE
    namespace Ui { class MainWindow; }
    QT_END_NAMESPACE
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        MainWindow(QWidget *parent = nullptr);
        ~MainWindow();
    
    private:
        Ui::MainWindow *ui;
        void parseDataEntry(const QString dataPath);
    };
    #endif // MAINWINDOW_H
    

    谢谢你,达维克。这正是我想要的。