qt文件夾遍歷
㈠ QT中遍歷一個文件夾並給文件夾中的每個文件改名字,如何構造遍歷文件夾的迭代器,請高手指教啊
QDirIterator it("/etc", QDirIterator::Subdirectories);
while (it.hasNext()) {
qDebug() << it.next();
// /etc/.// /etc/..// /etc/X11// /etc/X11/fs// ...
}
迭代器不用自己寫 還有隻是重命名文件名不用打開文件的 我沒具體寫 你先試試吧
㈡ QT 獲得指定文件夾及子文件夾下面的文件
使用QDir::entryInfoList獲的文件夾下的所有文件列表(QFileInfoList),然後通過判斷QFileInfoList中每個QFileInfo的類型,QFileInfo::isDir()判斷是否目錄,QFileInfo::isFile()判斷是否是文件,對於目錄,同樣的方法處理即可獲得子目錄中的文件了。
㈢ QT treewidget控制項怎麼能實現從指定的文件夾裡面的每個子文件夾中讀取指定格式的文件(如.txt)並顯示
①執行「視圖→工具欄→控制項工具箱」命令,展開「其他控制項」按鈕,「控制項工具箱」工具欄
②單擊工具欄上,在彈出的下拉列表中,選擇「ShockwaveFlashObject」選項,當滑鼠變成細十字線,按住左鍵在工作區中拖出一個矩形(這就是後來的播放窗口)。當
③滑鼠移到矩形框入右下角拖動方向的箭頭,按住左鍵並拖動來調整矩形的大小的權利。在矩形框
④單擊滑鼠右鍵,在隨後彈出的快捷菜單中選擇「屬性」選項,打開「屬性」對話框中,輸入需要在「電影」插入Flash動畫文件名後面的框和完整路徑,然後選擇關閉「屬性」窗口。
【注】:為了方便移動演示,與保存在同一文件夾中的Flash動畫文件的最佳表現,那麼路徑也可以使用相對路徑。
[提示]:Flash動畫文件名和完整路徑需要插入最好的英文字元!
㈣ QT treewideget怎麼實現顯示一個文件及文件夾裡面的子文件夾
這個可以使用QTreeview和QFileSystemModel:官方文檔例子如下:
It is simple to construct a tree view displaying data from a model. In the following example, the contents of a directory are supplied by a QFileSystemModel and displayed as a tree:
QFileSystemModel *model = new QFileSystemModel;
model->setRootPath(QDir::currentPath());
QTreeView *tree = new QTreeView(splitter);
tree->setModel(model);
如果要使用QTreeWidget 就要使用QFileInfo對文件夾進行遍歷,挨個添加到QTreeWidget中。有關QFileInfo請參考幫助文檔:http://qt-project.org/doc/qt-4.8/qfileinfo.html
㈤ qt 讀取目錄下的文件個數 包括各種的子目錄下的文件只要是在這個大目錄下的
//下面只是一個思路示例,不保證語法完全正確。
qint64GetFolderSize(QStringfolder)
{
QDirdir(folder);
if(!dir.exists())
return0;
qint64totalsize=0;
QFileInfoListlist=dir.entryInfoList();
for(intii=0;ii<list.size();ii++)
{
QFileInfofileInfo=list.at(ii);
if(fileInfo.isFile())
totalsize+=fileInfo.size();
elseif(fileInfo.isDir())
{
totalsize+=GetFolderSize(fileInfo.path);
}
}
returntotalsize;
}
㈥ 請問QT中一次載入一個文件夾的圖片並可以一張一張的顯示出來該該怎麼做呢
把文件夾里的圖片路徑保存在QStringList當中,實現對QStringList的遍歷,這樣就可以實現一張一張的顯示了
㈦ qt中怎樣遍歷一個txt文件內容
//用文件流來讀取
QFilefile("my.txt");
file.open(QIODevice::ReadOnly);
QTextStramout(&file);
while(!out.atEnd()){
//每次讀取一行,然後判斷即可
QStringstrReadLine=out.readLine();
}
㈧ qt 用什麼方法使函數不被打斷
如果你實在想用qt又要用c/c++標准庫,那麼 qt for vs 倒是一個不錯的選擇,可惜貌似你在Linux使用的。程序編譯出錯,很有可能是因為找不到你用到某些函數的頭/庫文件。
不過你既然都用到qt了,建議還是用qt提供的一整套機制來實現你的程序,對於你問題中提到的需求,可以有下面的解決方式:
用QDir類可以實現對所有目錄/文件的遍歷操作,
用QFile/QTextStream可以實現對文件讀寫的操作等。
qt提供的介面都很友好,你稍微看一下qt的幫助文檔就知道應該怎麼用了。不過如果你是想把一個C語言做的項目用qt重做的話,那就當我什麼都沒有說了~