网站首页 > 博客文章 正文
1、文件操作
1.1、QFile
QFile 类提供了 一个用于读/写文件的接口,它可以用来读/写文本文件、二进制文件和 Qt 资源的 I/0 设备。
一般在构建 QFile 对象时便指定文件名,当然也可以使用 setFileName ()进行设置。可以使用 exists() 来检查文件是否存在使用 remove()来删除一个文件 。
一个文件可以使用 open() 打开,使用 close()关闭,使用 flush()刷新 ,文件的读写可以使用 read ()、 readLine ()、 readAll ()和 write (),可以使用自size()函数来获取文件的大小,使用 seek ()来定位到文件 的任意位置,使用 pos ()来获取当前的位置,使用 atEnd ()来判断是否到达了文件的末尾 。
还是可以用以下学过FILE,fstream这些来进行文件操作
1.2、打开并写入文件
文件操作流程 打开>写入/读取>关闭
访问一个设备以前,需要使用 open ()函数打开该设备,而且必须指定正确的打开模式,不同的打开模 式之间可以使用“|”符号同时使用。
打开设备后可以使用 write()或者 putChar()来进行写人,可以使用seek函数进行文件指针移动(如果 有),使用read ()、 readLine ()或者 readAll ()进行读取,最后使用 close()关闭设备。
/*
* ReadOnly = 0x0001, //只读,文件不存在就报错
WriteOnly = 0x0002, //只写,文件不存在就创建新的
ReadWrite = ReadOnly | WriteOnly, //读写,文件不存在就报错
Append = 0x0004, //追加,文件不存在就创建新的,文件指针在末尾
Truncate = 0x0008, //只写,文件存在就清空里面的内容,重写,文件不存在就创建新的
Text = 0x0010, //以文本方式打开
*/
QFile file("D:/test/1.txt");
if (!file.open(QIODevice::WriteOnly | QIODevice::Text))//打开方式
{
qDebug() << file.errorString();
}
else
{
qDebug() << "打开成功!";
}
file.write("hello thank you!"); //可能会有字符集问题
file.close();
1.3、读取里面所有内容
领QT开发教程学习资料,点击下方链接莬费领取↓↓,先码住不迷路~
点击→领取「链接」
QFile file("D:/test/1.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
qDebug() << file.errorString();
}
else
{
qDebug() << "打开成功!";
}
//QString str= file.readAll(); //用qstring存一下
//qDebug()<<str;
while(!file.atEnd())
{
QByteArray line=file.readLine();
qDebug()<<line;
}
file.close();
1.4、其他操作
获取的文件大小:size()
更改文件的名字:rename("新名字")
删除文件:remove()
获取一行中的某个位子的字符:先用readLine()读完这行,然后通过 string的mid函数处理
mid(5,1)从第五个位置,获取1个字符
移动文件指针:seek(5)
1.5、QIOdevice类
QIODevice 类是 Qt 所有 I/O 设备的基础类 ,为QFIle等类提供一个抽象接口
2、继承图
QFile这些都是他的子类
- 上一篇: 大神总结的Qt开发经验,满满的都是干货
- 下一篇: 一分钟学会Qt编程文件操作(qt编程入门教程)
猜你喜欢
- 2024-09-08 Qt 贪吃蛇制作(含源码)(qt编写贪吃蛇)
- 2024-09-08 qt 提示“启动程序失败,路径或者权限错误?”解决方法
- 2024-09-08 电脑文件不小心删除了怎么办?两个方法教你秒恢复
- 2024-09-08 Qt——内存回收(qti内存)
- 2024-09-08 C++跨平台库QT学习 操作Excel(跨平台c++开发工具)
- 2024-09-08 Qt 工程 pro文件(qt工程文件.pro在哪儿找)
- 2024-09-08 Qt中的快捷键汇总(qtcreator快捷键)
- 2024-09-08 Qt中文乱码解决思路(vscode终端中文乱码怎么解决)
- 2024-09-08 Qt5+VS2015编程实例:下拉列表框QComboBox控件使用
- 2024-09-08 Qt编程进阶(87):基于HTTP协议的网络文件下载
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)