Чтение локального XML файла с помощью Qt Quick XmlListModel - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть XML файл (data. xml), подобный этому:

<?xml version="1.0" encoding="UTF-8"?>
<table name="atome">
    <column name="id">1</column>
    <column name="nom">Hydrogène</column>
    <column name="slug">hydrogene</column>
    <column name="electron">1</column>
    <column name="numero">1</column>
    <column name="symbole">H</column>
    <column name="info_groupe">1</column>
    <column name="info_periode">1</column>
    <column name="info_bloc">s</column>
</table>

Я могу просмотреть содержимое этого XML файла с QML:

import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Layouts 1.0
import QtQuick.XmlListModel 2.0

ApplicationWindow {
    visible: true
    width: 640
    height: 480

    XmlListModel {
        id: model
        source: "qrc:/data.xml"
        query: "/table/column"
        XmlRole { name: "columnName"; query: "string(@name)" }
        XmlRole { name: "columnValue"; query: "string()" }
    }

    ListView {
        anchors.fill: parent
        model: model
        delegate:  Text { text: columnName + " = " + columnValue }
    }

}

Но если я помещаю файл в /var/tmp/data.xml и меняю источник на источник: "/var/tmp/data.xml", я не могу ничего показать.

source: " /var/tmp/data.xml"

Есть идеи?

1 Ответ

0 голосов
/ 09 апреля 2020

ОК, это должен быть файл "source:": ///var/tmp/data.xml ""

...