900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > QT中获取文件路径 文件名 后缀

QT中获取文件路径 文件名 后缀

时间:2021-11-12 07:46:59

相关推荐

QT中获取文件路径 文件名 后缀

QString file_full, file_name, file_path,file_suffix ;QFileInfo fileinfo;file_full = QFileDialog::getOpenFileName(this,.....);fileinfo =QFileInfo(file_full);//文件名file_name = fileinfo.fileName();//文件后缀file_suffix = fileinfo.suffix()//绝对路径file_path = fileinfo.absolutePath();

/p/f7b2ae13bcca

QString runPath = QCoreApplication::applicationDirPath();//获取项目的根路径QString file_name = QFileDialog::getOpenFileName(this,QStringLiteral("选择文件"),runPath,"Text Files(*.txt)",nullptr,QFileDialog::DontResolveSymlinks);

static QString getOpenFileName(QWidget *parent = nullptr,const QString &caption = QString(),const QString &dir = QString(),const QString &filter = QString(),QString *selectedFilter = nullptr,Options options = Options());

第一个参数parent,用于指定父组件,可以看到QT默认这个参数是可以为空的,如果不想提供父控件,你可以直接写nullptr,但是我建议你写一个父控件,例如this即可。这样选择文件的弹框就可以在父控件中间显示。就像这样,弹框的中心和父控件中心是相同的

第二个参数caption,是对话框的标题,例如上图中的“选择文件”就是这么来的

第三个参数dir,是对话框显示时默认打开的目录,"“不写任何参数,那么会默认打开工程的目录,我一般会写”"或者提供项目的根目录;“.”:打开当前目录?

第四个参数filter,是对话框的后缀名过滤器,如果不写,那么任何文件都会显示,如果写了会根据过滤器显示;

如果选择的文件是同一个类型,只是后缀不同,用空格隔开就好,例如都是图片,“Files(.jpg .png)”,代表只能选择后缀为jpg或者png的图片

如果选择的文件是不同类型,那么需要多个过滤器,过滤器之间用两个分号分隔,例如 "Image Files(.jpg);;Text Files(.png)";

第五个参数selectedFilter,是默认选择的过滤器,写nullptr就行,因为QT默认也是空,啥也没过滤;

第六个参数options,是对话框的一些参数设定,比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。

关于option参数,QT提供了很多种:

/article/64581504018/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。