QFileDialog 获取被选中的文件路径和文件名
时间: 2024-05-08 08:16:58 浏览: 11
使用QFileDialog类的getOpenFileNames()方法可以获取被选中的文件路径和文件名,如下所示:
```python
from PyQt5.QtWidgets import QApplication, QFileDialog
app = QApplication([])
fileNames, _ = QFileDialog.getOpenFileNames(None, "选择文件", "", "All Files (*);;Text Files (*.txt)")
print(fileNames)
```
在上面的代码中,QFileDialog.getOpenFileNames()方法的第一个参数是父窗口,这里我们传入了None表示没有父窗口;第二个参数是对话框标题;第三个参数是默认打开的路径,这里我们传入了空字符串表示默认路径为当前目录;第四个参数是文件过滤器,这里我们传入了"All Files (*);;Text Files (*.txt)",表示可以选择所有文件和以".txt"为后缀的文本文件。
最后,该方法返回两个值,第一个值是被选中的文件路径列表,第二个值是文件过滤器列表。在上面的代码中,我们只获取了第一个值,即被选中的文件路径列表,并将其打印输出。
相关问题
QFileDialog 获取被选中的文件名
在 PyQT5 中,可以使用 QFileDialog.getOpenFileNames() 方法获取被选中的文件名。该方法会弹出文件选择对话框,让用户选择文件。用户选择的文件名将作为一个列表返回。
例如,以下代码会弹出文件选择对话框让用户选择一个或多个文件,然后将选中的文件名打印出来:
```
from PyQt5.QtWidgets import QApplication, QFileDialog
app = QApplication([])
# 弹出文件选择对话框
file_names, _ = QFileDialog.getOpenFileNames()
# 打印选中的文件名
for file_name in file_names:
print(file_name)
```
在上面的代码中,`QFileDialog.getOpenFileNames()` 方法返回一个元组,其中第一个元素是一个包含选中文件名的列表,第二个元素是一个字符串,表示用户点击的按钮。在这里我们只关心第一个元素,所以使用 `_` 忽略了第二个元素。
qfiledialog怎么获取已经保存的文件文件名
如果你正在使用Qt框架,可以使用QFileDialog来获取已保存文件的文件名。下面是一个示例代码:
```cpp
#include <QFileDialog>
#include <QDebug>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QString filePath = QFileDialog::getSaveFileName(nullptr, "保存文件", "", "文本文件 (*.txt)");
if (!filePath.isEmpty()) {
QFileInfo fileInfo(filePath);
QString fileName = fileInfo.fileName();
qDebug() << "已保存文件的文件名:" << fileName;
}
return app.exec();
}
```
在上面的代码中,我们使用`QFileDialog::getSaveFileName`函数来显示一个保存文件的对话框,用户选择保存的文件后,返回文件的完整路径,存储在`filePath`变量中。然后,我们使用`QFileInfo`类来获取文件信息,并通过`fileName`方法获取文件名。
这只是一个简单的示例,你可以根据需要进行修改。注意,你需要在Qt项目中包含`QFileDialog`和`QFileInfo`头文件,并链接相应的Qt库。