1、QFileDialog----静态方法:允许用户选择某一个文件或者目录(即文件目录),遍历整个文件系统,即从C盘开始查找,直到找到一个或多个文件或目录为止。
获取文件:指的是获取文件的路径,并且文件分为打开某一个文件或者保存某一个文件。
文件操作:获取一个打开的文件名称:
# 获取一个打开的文件名称,"./表示当前文件夹"
# 过滤掉不需要的文件格式,一个过滤器,".png",**表示所有文件,想写多个需要用;;分割
#result = QFileDialog.getOpenFileName(self, "选择一个py文件", ",/",
# "All(*.*);;Images(*.png *.jpg);;Python文件(*.py)")
# 一个元素,绝对路径和过滤字符串
#print(result)
获取多个打开文件的名称:
# 同时获取多个文件
result = QFileDialog.getOpenFileNames(self, "选择多个文件",",/",
"All(*.*);;Images(*.png *.jpg);;Python文件(*.py)" )
# 返回一个元组,元组的第一个元素是一个列表,列表中共有所选的多个文件路径,后边就是过滤器
print(result)
获取打开的文件url(统一资源定位符)地址:
result = QFileDialog.getOpenFileUrl(self, "选择一个文件", "./",
"All(*.*);;Images(*.png *.jpg);;python(*.py)")
# 元组的第一个元素变成了QUrl对象,本地文件所对应的协议:file//
print(result)
获取保存的文件名称:
# 保存文件
result = QFileDialog.getSaveFileName(self, "保存文件", "./", "All(*.*);;Images(*.png *.jpg);;python文件(*.py)")
# 已经获得保存文件的路径,可以直接将所要保存的文件的内容直接写入该文件
print(result)
获取文件夹路径地址,获取文件夹url地址:(必须是已经存在的文件路径)
# 目录需要是一个QUrl对象才可以
result = QFileDialog.getExistingDirectory(self, "选择一个文件夹", QUrl("./"))
print(result)
# 获取文件夹
result = QFileDialog.getExistingDirectory(self, "选择一个文件夹", "./")
# 输出结果就是一个单独的路径字符串,
print(result)
操作简单的情况下可以直接使用静态方法完成。