当前位置:首页 >> 硬件技术 >> 【QT】 QFileQFileInfo文件操作,索爱w850i

【QT】 QFileQFileInfo文件操作,索爱w850i

cpugpu芯片开发光刻机 硬件技术 2
文件名:【QT】 QFileQFileInfo文件操作,索爱w850i 【QT】 QFileQFileInfo文件操作

很高兴在雪易的CSDN遇见你 ,给你糖糖

欢迎大家加入雪易社区-CSDN社区云 


前言

本文分享QT对文件的操作技术,希望对各位小伙伴有所帮助!

感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步!

你的点赞就是我的动力(^U^)ノ~YO

目录

前言

1. QFile构造函数

2. QFile常用函数

3. 实操

        》创建并打开文件.

        》判断文件是否存在.

        》拷贝文件.

        》给文件重命名

        》获取用户对指定文件的权限,是否可读

        》写入文件

        》读取文件数据

        》删除文件

        》获取文件夹下所有文件

结论:


1. QFile构造函数 QFile(const QString & name)QFile(QObject * parent)QFile(const QString & name, QObject * parent) 2. QFile常用函数                                     函数名                                                         功能                                      copy()                                                      复制文件                                     exists()                                               检查文件是否存在                                      open()                                                      打开文件                                    remove()                                                      删除文件                                    rename()                                                    修改文件名                                 setFileName()                                                    设置文件名                                       size()                                                      文件大小                                       pos()                                              文件光标当前位置                                      seek()                                              设置文件光标位置                                     atEnd()                                           判断当前是否为文件尾                                      read()                                                  读取文件内容                                     close()                                                      关闭文件

        》文件打开模式 

                  模式               值 描述    QIODevice::NotOpen          0x0000不打开    QIODevice::ReadOnly          0x0001 只读方式    QIODevice::WriteOnly          0x0002 只写方式,如果文件不存在则会自动创建文件    QIODevice::ReadWriteReadOnly | WriteOnly读写方式    QIODevice::Append          0x0004此模式表明所有数据写入到文件尾    QIODevice::Truncate          0x0008 打开文件之前,此文件被截断,原来文件的所有数据会丢失    QIODevice::Text          0x0010读的时候,文件结束标志位会被转为’\n’;写的时候,文件结束标志位会被转为本地编码的结束为,例如win32的结束位’\r\n’    QIODevice::UnBuffered          0x0020                                                        不缓存

 

3. 实操         》创建并打开文件. //初始化时加载文件路径QFile file("F:/test/xxx.txt");//以读写的方式打开文件,成功返回true,失败返回false//想用其他方式打开文件,请看上面的文件打开模式bool ok = file.open(QIODevice::ReadWrite);//如果文件不存在,则创建并打开该文件         》判断文件是否存在. //判断指定文件是否存在.也可以用来判断在指定路径下是否有文件和你将要创建的文件重名.//存在返回true,不存在返回falsebool exist = QFile::exists("F:/test/xxx.txt");         》拷贝文件. //把D盘里的xxx.txt拷贝到到F盘,命名为sss.txt//拷贝成功返回true,失败返回falsebool ok = QFile::copy("D:/xxx.txt", "F:/sss.txt");         》给文件重命名 QFile file("F:/xxx.txt");bool ok = file.rename("F:/sss.txt"); //重命名成功返回true,失败返回false//也可以直接调用bool ok = QFile::remove("F:/xxx.txt", "F:/sss.txt");         》获取用户对指定文件的权限,是否可读 QFlags<QFileDevice::Permission> power = QFile::permissions("F:/xxx.txt"); //判断文件所有者是否可读if (power.testFlag(QFile::ReadOwner))qDebug("Can Read!");         》写入文件 //定义文件内容字符串QString str= "写入文件的内容";QFile file("F:/xxx.txt"); //打开文件,不存在则创建file.open(QIODevice::ReadWrite | QIODevice::Text);//写入文件需要字符串为QByteArray格式file.write(str.toUtf8());file.close();         》读取文件数据 //先打开文件QFile file("F:/xxx.txt");file.open(QIODevice::ReadOnly | QIODevice::Text);//使用QTextStream一行一行读取文件QTextStream in(&file);while (!in.atEnd()){QString line = in.readLine();      //整行读取qDebug() << line;}         》删除文件 QFile file("F:/xxx.txt");bool ok = file.remove();//删除成功返回true,失败返回false//也可以直接调用bool ok = QFile::remove("F:/xxx.txt");         》获取文件夹下所有文件 QDir *dir = new QDir("F:/");QStringList filters;filters << "*.png" << "*.jpg" << "*.bmp";          //过滤器,过滤你想要的文件后缀//用链表保存过滤的文件名QList<QFileInfo> *fileInfo = new QList<QFileInfo>(dir->entryInfoList(filters));//获取文件数目、文件名称for(int i = 0; i < fileInfo->count(); i++){//QFileInfo(路径名的Qstring字符串).filename可以直接取到路径中的文件名qDebug() << fileInfo->at(i).fileName();}

结论:

        本文主要介绍对文件的操作!

感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步!

你的赞赏是我的最最最最大的动力(^U^)ノ~YO

协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接