qt文件遍历|qt如何把链表中的数据写入文件并且把文件里面的内容加载到链表

Ⅰ QT编程中对于文件操作的程序讲解,最好是把下面的程序一句一句的解释下:在线等,十分感谢

void funlibEdit::InitTypeData(){//读基本类型QFile file("datatype"); //datatype为读取的文件名,这里可以为路径,否则表示为当前路径if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) //设置为Text方式只读,并判断是否打开return; //若打开失败直接返回QTextStream in(&file); //将内容读到文本流中,即in中为datatype中的所有内容while (!in.atEnd()) //循环遍历到结束{QString loctype = in.readLine(); //读一行到locttupeloctype = loctype.simplified(); //这个应该是化简,具体我不清楚,你可以去看下手册simplified的函数功能m_typelist.append(loctype); //在m_typelist这段字符串之后加上loctype这个字符串}file.close(); //关闭打开的datatype文件//读类型映射QFile mapfile("datatypemap");if (!mapfile.open(QIODevice::ReadOnly | QIODevice::Text)) //同上判断return;QTextStream mapin(&mapfile); //同上while (!mapin.atEnd()) //同上{QString mapline = mapin.readLine(); //同上int index = mapline.indexOf(":"); //所以“:”,返回位置QString outtype = mapline.left(index).simplified(); //同上QString intype = mapline.right(mapline.length()-index-1).simplified(); //同上m_typemap[outtype] = intype; //放到数组中,功能同上}mapfile.close(); //同上}

Ⅱ qt中怎样遍历一个txt文件内容

//用文件流来读取QFilefile("my.txt");file.open(QIODevice::ReadOnly);QTextStramout(&file);while(!out.atEnd()){//每次读取一行,然后判断即可QStringstrReadLine=out.readLine();}

Ⅲ QT中遍历一个文件夹并给文件夹中的每个文件改名字,如何构造遍历文件夹的迭代器,请高手指教啊

QDirIterator it("/etc", QDirIterator::Subdirectories);while (it.hasNext()) { qDebug() << it.next(); // /etc/.// /etc/..// /etc/X11// /etc/X11/fs// … } 迭代器不用自己写 还有只是重命名文件名不用打开文件的 我没具体写 你先试试吧

Ⅳ 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中一次载入一个文件夹的图片并可以一张一张的显示出来该该怎么做呢

把文件夹里的图片路径保存在QStringList当中,实现对QStringList的遍历,这样就可以实现一张一张的显示了

Ⅵ 如何在QT中写C函数

如果你实在想用qt又要用c/c++标准库,那么 qt for vs 倒是一个不错的选择,可惜貌似你在Linux使用的。程序编译出错,很有可能是因为找不到你用到某些函数的头/库文件。不过你既然都用到qt了,建议还是用qt提供的一整套机制来实现你的程序,对于你问题中提到的需求,可以有下面的解决方式:用QDir类可以实现对所有目录/文件的遍历操作,用QFile/QTextStream可以实现对文件读写的操作等。qt提供的接口都很友好,你稍微看一下qt的帮助文档就知道应该怎么用了。不过如果你是想把一个C语言做的项目用qt重做的话,那就当我什么都没有说了~

Ⅶ qt如何把链表中的数据写入文件,并且把文件里面的内容加载到链表

先遍历QList,将里面每个对象都写到文件,然后保存再打开文件,一个按一个Object读出来,恢复Object的状态,最后一个个的push进QList里面

Ⅷ 《qt》中如何提取当前目录下指定后缀名的文件

QFileInfoList InfoList = QDir(qApp->applicationDirPath()).entryInfoList();//获取当前目录所有文件QFileInfoList SuffixInfoList;//定义放提取文件的List//遍历foreach(QFileInfo fileInfo, QFileInfoList){ if(!fileInfo.isFile()) continue;//不是文件继续,只用于加速,可不加 //后缀不区分大小写,需要区分直接用“==” if(0==fileInfo.suffix().compare(后缀), Qt::Caseinsensitive) { SuffixInfoList << fileInfo;//指定后缀,加入列表 }} 以上纯为手打,不是Copy的,可能有些拼写错误大小写错误什么的,望谅解

Ⅸ qt 怎么使用多线程遍历文件夹

一、Qt遍历文件夹下一层的文件:方式1:void ImageTree::addFolderImages(QString path){ //判断路径是否存在 QDir dir(path); if(!dir.exists()) { return; } dir.setFilter(QDir::Files | QDir::NoSymLinks); QFileInfoList list = dir.entryInfoList(); int file_count = list.count(); if(file_count <= 0) { return; } QStringList string_list; for(int i=0; i { QFileInfo file_info = list.at(i); QString suffix = file_info.suffix(); if(QString::compare(suffix, QString("png"), Qt::CaseInsensitive) == 0) { QString absolute_file_path = file_info.absoluteFilePath(); string_list.append(absolute_file_path); } }} 分析:遍历文件的下一层,对于系统而言包括:文件夹、文件、快捷方式,使用setFilter即可过滤。通过entryInfoList则可以获取过滤后所得到的文件夹下的文件信息列表,遍历文件通过操作QFileInfo可得到所需的文件详细信息(大小、类型、后缀等)。


赞 (0)