使用Qt Quick XmlListModel读取本地XML文件
我有如下XML文件(data.XML):使用Qt Quick XmlListModel读取本地XML文件,xml,qt,qtquick2,Xml,Qt,Qtquick2,我有如下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>
<?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>
但是,如果我将文件放在/var/tmp/data.xml中,并将source更改为source:“/var/tmp/data.xml”,我将无法显示任何内容
来源:“/var/tmp/data.xml”
有什么想法吗?好的,应该是“来源:file:///var/tmp/data.xml“”
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 }
}
}