QT文件操作

这篇具有很好参考价值的文章主要介绍了QT文件操作。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

时间记录:2024/1/10
文件读写的一些注意点,读文件时文件名可以是相对路径,但是向文件写内容时文件名需要是绝对路径
1.文件对话框
QFileDialog
静态方法getOpenFileName弹出文件选择框,选择要打开的文件,返回打开文件的路径+文件名
2.文件操作
QFile类
常用属性:
(1)setFileName:设置要打开的文件路径+文件名
(2)open:打开文件,传入参数,打开方式只读、只写、读写、追加
(3)readxxx:读取文件内容,返回QByteArray二进制内容
(4)write:向文件中写入内容
(5)close:关闭文件并保存
3.中文编码问题解决
QTextStream/QTextCodec类
(1)QTextStream的setCodec方法指定编码
(2)QTextCodec类的静态方法codecForName来指定编码,toUnicode方法将QByteArray数据以指定编码转为QString数据
(3)写入时使用flush方法将缓存中的数据刷新进文件保存
4.文件夹操作
QDir类
常用属性
(1)setPath设置文件夹路径
(2)exists方法判断路径是否物理存在
(3)mkdir方法创建文件夹
5.设置当前项目路径为应用程序路径

QDir::setCurrent(QApplication::applicationDirPath());

6.获取随机数
(1)原始方法,qsrand和qrand方法结合获取

qsrand(QTime(0,0,0).secsTo(QTime::currentTime()));
int randNum = qrand()%9;//生成0-9之间的随机数

(2)QRandomGenerator类

QRandomGenerator::global()->bounded(10);

7.获取当前时间字符串
QDateTime/QDate/Qtime
常用属性
(1)静态方法currentDateTime获取当前日期时间
(2)toString方法将类格式化为字符串"yyyy/MM/dd HH:mm:ss"
8.读写ini配置文件
QSettings类
8.1 ini文件格式介绍
[组]
键=值
8.2 读写示例:

    conf = new QSettings("./conf.ini",QSettings::IniFormat,this);//创建对象

    conf->beginGroup("SQL");//设置组
    conf->setValue("username","admin");//写内容
    conf->setValue("password","123456");
    conf->endGroup();

    conf->setValue("QT/username","123");//直接向组写内容
    conf->setValue("QT/password","123");

    qDebug() << conf->value("QT/username").toString();//获取值

    conf->beginGroup("SQL");
    qDebug() << conf->value("username").toString();
    conf->endGroup();

    conf->sync();//同步数据到ini文件

8.3 结果
QT文件操作,QT,qt,ini,file
9.QString字符串转QByteArray方法的介绍
(1)toUtf8:以UTF-8编码格式转换汉字
(2)toLatin1:以ASCII编码转换汉字
(3)toLocal8Bit:以本地计算机操作系统的编码格式转换汉字,一般为GBK文章来源地址https://www.toymoban.com/news/detail-780022.html

到了这里,关于QT文件操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt——文件的读写操作

    文件的读写是很多应用程序具有的功能,甚至某些应用程序就是围绕着某一种格式文件的处理而开发的,所以文件读写是应用程序开发的一个基本功能。 Qt 提供了两种读写纯文本文件的基本方法: 用 QFile 类 的 IODevice 读写功能直接进行读写 利用 QFile 和 QTextStream 结合起来,

    2024年02月13日
    浏览(45)
  • 「Qt」文件读写操作

            我们知道 C 和 C++ 都提供了文件读写的类库,不过 Qt 也有一套自己的文件读写操作;本文主要介绍 Qt 中进行文件读写操作的类 —— QFile 。         一般的桌面应用程序,当我们想要打开一个文件时,通常会弹出一个文件对话框。在 Qt 中,文件对话框使用 QFileDial

    2024年02月12日
    浏览(40)
  • Qt文件系统操作和文件的读写

    QIODevice:所有输入输出设备的基础类 QFile :用于文件操作和文件数据读写的类 QSaveFile :用于安全保存文件的类 QTemporaryFile :用于创建临时文件的类 QTcpSocket 和 QUdpSocket :分别实现了TCP和UDP的类 QSerialPort :实现串口通信的类 QBluetoothSocket :用于蓝牙通信的类 QProcess :用于启

    2024年02月12日
    浏览(48)
  • 【Qt】Qt中的拖放操作实现——拖放文件以及自定义拖放操作

    文章参考《Qt Creator快速入门(第三版)》。 拖放操作分为拖动Drag和放下Drop,Qt提供了强大的拖放机制,可在帮助文档中通过Drag and Drop查看。 在Qt中,数据拖动时会被存储为MIME类型(Multipurpose Internet Mail Extensions)。Qt提供QMimeData类表示MIME类型的数据,并使用QDrag类完成数

    2023年04月19日
    浏览(56)
  • 十、Qt 操作PDF文件

     《一、QT的前世今生》 《二、QT下载、安装及问题解决(windows系统)》 《三、Qt Creator使用》 ​​​ 《四、Qt 的第一个demo-CSDN博客》 《五、带登录窗体的demo》 《六、新建窗体时,几种窗体的区别》  《七、Qt 信号和槽》  《八、Qt C++ 毕业设计》 《九、Qt C++ 数据库开发》

    2024年01月17日
    浏览(40)
  • 【Qt学习】08:文件读写操作

    文件操作是应用程序必不可少的部分,Qt 作为一个通用开发库提供了跨平台的文件操作能力。Qt 通过QIODevice提供了对 I/O 设备的抽象,这些设备具有 读写字节块 的能力,以下是 I/O 设备的类图: QIODevice:所有 I/O 设备类的父类,提供了字节块读写的通用操作以及基本接口;

    2024年02月11日
    浏览(38)
  • Qt文件 I/O 操作

    逐行读取 逐行写入(文件不存在即自动创建) 读取全部内容 使用流式操作符读取 QIODevice::ReadWrite   以读写打开 QIODevice::WriteOnly    以只写打开 QIODevice::Append    以追加的方式打开,新增加的内容将被追加到文件末尾 QIODevice::Truncate    以重写的方式打开,在写入新的数据

    2024年02月07日
    浏览(29)
  • 十二、Qt 操作PDF文件(2)

    一、在《十、Qt 操作PDF文件-CSDN博客》中我们用Poppler类库打开了PDF文件,并显示到窗体上,但只能显示一页,功能还没完善,在本章节中,加入了: 通过选择框选择PDF文件并打开,默认打开第一页。 通过上一页、下一页按钮实现翻页功能。 通过第一页、最后一页、跳转到某

    2024年01月19日
    浏览(35)
  • C/C++/Qt 文件操作 & 效率比较

    C++文件操作、QT文件操作因为使用了面向对象,具有更好的封装性。 引用 探寻C++最快的读取文件的方案 Linux平台上运行程序普遍比Windows上快。 Windows下VC编译的程序一般运行比MINGW(MINimal Gcc for Windows)快。 VC对cin取消同步与否不敏感,前后效率相同。反过来MINGW则非常敏感,

    2024年02月07日
    浏览(26)
  • Qt 实现压缩文件、文件夹和解压缩操作zip

    通过Qt自带的库来实现,使用多线程方式,通过信号和槽来触发压缩与解压缩,并将压缩和解压缩结果回传过来。 使用的类: 1、在.pro文件中添加模块gui-private 若未cmake工程,需要在CMakeList.txt中添加 待验证: 1、中文路径,文件名含有中文 2、隐藏文件夹,.dir和…dir,例如:

    2024年02月14日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包