Qt小程式(七)——獲取資料夾和檔案路徑
阿新 • • 發佈:2018-12-31
目錄
前言
這篇博文躺在草稿箱裡很久了,一直沒有完成!主要時間一過,就忘記了原來要寫什麼 內容了!記得在哪裡看過這句話:今天的事如果不完成,或許你永遠都不會完成了!這裡把這篇博文就記錄Qt中讀取資料夾和檔案路徑。
QWidget/QDialog/QMainWindow
Qt新增ui
檔案
右鍵專案,新增新檔案,選擇Qt設計師介面類,然後選擇介面模板,比如Dialog without Buttons。然後設定類名,最後成功。
Qt如何重新命名工程
在Qt中沒有選項可以直接重新命名工程,所以就只能手動修改。比如:原工程名為
8_test
,直接修改工程資料夾名為openCam
8_test.pro
為openCam.pro
。最後,在openCam.pro
中修改如下語句:
TARGET = 8_test ----------> TARGET = openCam
注意:修改之前要清理專案,然後重新構建即可
Qt獲取資料夾和檔案路徑
Qt獲取資料夾路徑
getExistingDirectory
static QString getExistingDirectory(QWidget *parent = Q_NULLPTR,
const QString &caption = QString(),
const QString &dir = QString(),
Options options = ShowDirsOnly);
引數1:父視窗
引數2:彈出介面的選單欄文字
引數3:開啟的初始目錄 比如“/”表示根目錄
void Widget::on_openSrcDirPushButton_clicked()
{
srcDirPath = QFileDialog::getExistingDirectory(
this, "choose src Directory",
"/" );
if (srcDirPath.isEmpty())
{
return;
}
else
{
qDebug() << "srcDirPath=" << srcDirPath;
srcDirPath += "/";
}
}
注意:qDebug() << "srcDirPath=" << srcDirPath;
輸入我們開啟目錄的路徑,比如:/mnt/hgfs
,這時候如果我們要讀取這個目錄下的檔案,此時路徑應為這裡寫程式碼片
/mnt/hgfs/然後加上檔名才是檔案的全路徑。不過或許大家用不到
srcDirPath += “/”;`這一句。
Qt獲取檔案路徑
getOpenFileName
獲取檔案路徑使用getOpenFileName
即可。使用方法和getExistingDirectory
類似
static QString getOpenFileName(QWidget *parent = Q_NULLPTR,
const QString &caption = QString(),
const QString &dir = QString(),
const QString &filter = QString(),
QString *selectedFilter = Q_NULLPTR,
Options options = Options());
引數1:父視窗
引數2:彈出介面的選單欄文字
引數3:開啟的初始目錄 比如“/”表示根目錄
引數4:設定開啟的檔案型別
引數5:看程式碼。。。
void Widget::slotBtnClick()
{
QString s = QFileDialog::getOpenFileName(
this, "選擇要播放的檔案",
"/",
"視訊檔案 (*.flv *.rmvb *.avi *.mp4);; 所有檔案 (*.*);; ");
qDebug() << "path=" << s;
if (!s.isEmpty())
{
}
}
附QString轉string的方法:
QString q_str("abc");
string = q_str.toStdString();
總結
獲取Qt的資料夾和檔案路徑還是很簡單的,應用層有API可以呼叫真的非常非常方便!