Qt 第32课、Qt 中的文件操作
创始人
2025-05-28 23:39:02

文本编辑器涉及到文本的保存和文本的读取,所以今天学习 Qt 中的文件操作。

1、Qt 中的 IO 操作

  • Qt 中 IO操作的处理方式
    — Qt 通过统一的接口简化了文本外部设备的操作方式
    — Qt 中的文件被看作一种特殊的外部设备(和Linux类似,一切皆文件)
    — Qt 中的文件操作与外部设备的操作相同

  • IO 操作中的关键函数接口
    在这里插入图片描述
    IO 操作的本质:连续存储的空间中进行数据的读写

  • Qt 中 IO 设备的类型
    — 顺序存取设备(串口编程)
      只能从头开始顺序的读写数据,不能指定数据的读写位置  
    — 随机存取设备(文件存取)
      可以定位到任意的位置进行数据的读写

  • Qt 中 IO 设备的继承层次图
    在这里插入图片描述
    2、Qt 中的文件操作

  • QFile 是 Qt 中用于文件操作的类

  • QFile 对象对应到计算机上的一个文件
    在这里插入图片描述

  • QFileInfo 类用于读取文件属性信息

程序一:

#include 
#include 
#include 
#include 
#include void file_info(QString s)
{QFile file(s);QFileInfo info(file);qDebug() <QFile file(s);if(file.open(QIODevice::WriteOnly | QIODevice::Text)){file.write("D.T.Software\n");file.write("xiebs\n");file.close();}
}void read(QString s)
{QFile file(s);if(file.open(QIODevice::ReadOnly | QIODevice::Text)){QByteArray ba = file.readAll();QString str(ba);qDebug() << str;file.close();}
}int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);//  write("C:/Users/xiebs/Desktop/new.txt");
//  read("C:/Users/xiebs/Desktop/new.txt");file_info("C:/Users/xiebs/Desktop/new.txt");return a.exec();
}

在这里插入图片描述


  • Qt 中提供了临时文件操作类 QTemporaryFile
    — 安全的创建一个全局唯一的临时文件
    当对象销毁时对应的临时文件被删除
    — 临时文件的打开方式为 QIODevice::ReadWrite
    — 临时文件常用于大数据传递或者进程间通信的场合
    在这里插入图片描述
    不需要指定读写方式,读写方式就是只读只写。

程序二:

#include 
#include 
#include 
#include int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);QTemporaryFile tempfile;if(tempfile.open()){tempfile.write("xiebs");tempfile.close();}QFileInfo info(tempfile);qDebug() << info.isFile();qDebug() << info.fileName();qDebug() << info.path();return a.exec();
}

在这里插入图片描述
在这里插入图片描述

小结:
1、Qt 通过统一的方式读写文件和外部设备
2、Qt 中 IO 设备的类型分为顺序存取和随机存取两种
3、QFile 提供了文件操作相关的方法
4、QFileInfo 提供了读取文件属性相关的方法
5、Qt 提供了临时文件操作类 QTemporaryFile

相关内容

热门资讯

苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...