Qt获取文件夹路径,绝对路径与相对路径,斜杠与反斜杠转换

 Qt获取文件夹路径

QString dirPath = QFileDialog::getExistingDirectory(this,tr("浏览选择文件夹"),tr("C:"));//返回用户选择的文件夹路径
    if(dirPath.isEmpty())//如果用户选择的路径为空
    {
        return;//不改变原来编辑栏里的文件路径
    }
    else
    {
        ui->lineEdit->setText(dirPath);//将编辑栏里的文件路径设置为用户选择的路径
    }

主要用到了QFileDialog的getExistingDirecroty函数 第一个参数父对象,第二个参数弹出的对话框标题,第三个参数弹出对话框的默认路径(这里选的是C盘,可以任意更改绝对相对路径都可以。)配合PushButton槽函数就可以实现按下按钮获取文件路径显示到LineEdit里。

参考: Qt中获取文件夹路径的方法-QFileDialog::getExistingDirectory的使用_跃马扬刀入东京的博客-CSDN博客_qfiledialog.getexistingdirectory

绝对路径与相对路径

绝对路径 E:/software/Qt

相对路径 ./Qt/5.15.1/msvc2019

./  :  表示当前路径。 如“./log/log1.txt” 表示当前路径下的log目录下的log1.txt

../ :  表示当前路径的上一级目录。 ../../当前路径的上两级目录。

:/  :  表示对资源的引用,引用资源文件路径 如":/source/image/07.jpg"表示资源文件里面(Resources)source目录下的image目录下的07.jpg文件

QPixmap pixmap = QPixmap(":/source/image/07.jpg")

 参考: Qt之路径总结_ooMelloo的博客-CSDN博客_qt 资源路径

QT文件路径问题_Y忍冬草的博客-CSDN博客_qt资源文件路径

Qt /与\转换 斜杠与反斜杠转换

qDebug()<<"QDir::toNativeSeparators(ui->lineEdit->text())"<< QDir::toNativeSeparators(ui->lineEdit->text());//QDir::toNativeSeparators(ui->lineEdit->text()) "E:\\software\\Qt"
qDebug()<<"QDir::fromNativeSeparators(ui->lineEdit_data_save_pos->text())"<< QDir::fromNativeSeparators(ui->lineEdit->text());//QDir::fromNativeSeparators(ui->lineEdit->text()) "E:/software/Qt"

主要用到QDir::toNativeSeparators()和QDir::fromNativeSeparators()里面传入路径(QString类型)就行。

 

posted @ 2022-11-05 22:22  小头痛  阅读(4459)  评论(0编辑  收藏  举报