Other
文件夹中。c://data.xml
并将代码中的路径更改为c://data.xml
,一切运行良好。我的问题是:如何处理这些相对路径?
这是代码:
QString filename="data.xml";
QVector<Student> students;
QFile file(filename);
if (!file.open(QFile::ReadOnly | QFile::Text))
{
return;
}
QDomDocument doc;
if (!doc.setContent(&file))
{
file.close();
return;;
}
file.close();
QDomElement root = doc.documentElement();
QDomElement studentNode = root.firstChildElement("Student");
while(!studentNode.isNull())
{
QString firstName=studentNode.firstChildElement("FirstName").text();
QString lastName=studentNode.firstChildElement("LastName").text();
int age=studentNode.firstChildElement("Age").text().toInt();
students.push_back(Student(firstName, lastName, age));
studentNode=studentNode.nextSiblingElement("Student");
}
这是项目文件:
QT += core gui xml
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = GUI1
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
editdialog.cpp \
student.cpp
HEADERS += mainwindow.h \
editdialog.h \
student.h
FORMS += mainwindow.ui \
editdialog.ui
OTHER_FILES += \
data.xml
答案 0 :(得分:2)
所有此类路径都是相对于启动应用程序的目录计算的。 QtCreator从他们自己的目录启动程序。在您的情况下,我建议您将此行添加到pro
文件中:
DESTDIR = $$PWD