QString FilePath2 = QFileDialog::getOpenFileName(this, tr("Open Directory"), "C:/", tr("Text files (*.txt)"));
QDir a = FilePath2;
qDebug() << a.absolutePath();
代码正常运行。但是absolutePath()仍然返回路径+文件名,而不是仅返回路径。
C:/Users/Blastcore/Desktop/text.txt而不仅仅是C:/Users/Blastcore/Desktop
有什么想法吗?
QFileInfo
代替QDir
,详见[http://doc.qt.digia.com/qt/qfileinfo.html#absolutePath]。 - KirweenQDir
可以 持有文件路径。如果您需要选择目录而不是文件,则应使用getExistingDirectory()
而不是getOpenFileName()
。如果您只需要该特定位置的目录,请像 Kirween 建议的那样使用QFileInfo
。 - TC1