QT开发笔记(一)

通过对话框选择需要的文件类型

QString fileName = QFileDialog::getOpenFileName(this,tr("请选择图片"),mainPath,tr("BMP图片(*.bmp);;文本文件(*.txt)"));

第一个参数一般都是this,第二个是对话框的名字,可以根据业务要求来定,第三个是文件路径,从该路径开始,第四个是想要选择的文件类型,在多个文件类型种类中间添加两个分号(;;)。返回该文件的文件名。我们还可以通过一个函数来判断该文件是否为空,是QString下的一个函数:isEmpty()。如果文件是空的那么可以用一个警告的对话框来提示:

if (fileName.isEmpty())
    {
            QMessageBox::warning(this, "Warning!", "Failed to open!");
    }

警告对话框

遍历某个路径下的文件

当我们需要对某个文件夹下的文件操作,比如删除或者对其名字进行改动,就可以通过以下函数来进行。

QString directory = QFileDialog::getExistingDirectory(this,tr("选择文件夹"),mainPath,QFileDialog::ShowDirsOnly);

使用getExistingDirectory函数,第一个参数一般是this,第二个是对话框的名字,第三个是开始的路径,第四个参数一般也为QFileDialog::ShowDirsOnly。
既然是要遍历文件,那么肯定需要有个循环,并且还需要找到索引,先用QDir类接受到文件索引

 QDir sub_dir(directory);

以下为通过for循环来遍历文件:

QStringList dirList = sub_dir.entryList(QDir::Files,QDir::Time);
//得到list表
for(int i;i<=dirList.size();i++){  //循环的方式
}

我们可以拼接文件名来操作文件:

                  //文件当前路径
QString imagePath=directory+"/"+QString::number(i)+".bmp";
//这里拿图片格式举例

遍历文件夹下的目录

先进行操作得到一级路径的选择对话框

QString mainPath = QFileDialog::getExistingDirectory(this,tr("选择文件夹"),"F:",QFileDialog::ShowDirsOnly); //一级路径
QDir sub_dir(mainPath);//得到文件夹索引
QFileInfoList dirList = sub_dir.entryInfoList(QDir::Files|QDir::NoDotAndDotDot|QDir::Dirs);
//得到文件夹列表,参数一般都是固定
QFile::rename(oldName,newName);//修改文件名
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值