QT5入门之18 -文件读写
来源:互联网 发布:淘宝卖家怎么用淘宝客推广 编辑:程序博客网 时间:2024/05/18 05:16
文件读写主要使用类QFile,它可以用来读写二进制文件或文本文件。
QFile可以自己单独被使用,但是和QDataStream或QTextStream一起使用将更加方便。
1.读文件
#include <QFile> QStringList lines; QFile file( "d:\\1.txt" ); QTextCodec::setCodecForLocale(QTextCodec::codecForName("gb2312"));//中文转码声明 if ( file.open( QIODevice::ReadOnly ) ) {//只读方式 QTextStream stream( &file ); QString line; int n = 1; while ( !stream.atEnd() ) { line = stream.readLine(); // 一行一行读取,不包括“/n”的一行文本,也可以用readAll()全部读取 qDebug()<< line.toUtf8(); //输出到“应用程序输出”窗口。 n++; lines += line; } file.close(); }
2.写文件
QStringList lines; lines.append("123"); lines.append("456"); lines.append("烤鸭"); QFile file( "d:\\1.txt" ); if ( file.open( QIODevice::WriteOnly ) ) {//只读模式 QTextStream stream( &file ); for (auto it = lines.begin(); it != lines.end(); ++it ) stream << *it << "\r\n"; file.close(); }
3.
其他方法:
exists() 来检查一个文件是否存。
remove()来移去一个文件。
size() 可以返回文件的大小。
if(file.exists()){ QMessageBox::warning(this, tr("test"), tr("file exists.")); int i = file.size(); file.remove(); }
4.打开方式:
枚举值 描述
QIODevice::NotOpen 未打开
QIODevice::ReadOnly 以只读方式打开
QIODevice::WriteOnly 以只写方式打开
QIODevice::ReadWrite 以读写方式打开
QIODevice::Append 以追加的方式打开,新增加的内容将被追加到文件末尾
QIODevice::Truncate 以重写的方式打开,在写入新的数据时会将游标设置在文件开头
QIODevice::Text 在读取时,将行结束符转换成 \n;在写入时,将行结束符转换成本地格式,例如 Win32 平台上是 \r\n
QIODevice::Unbuffered 忽略缓存
0 0
- QT5入门之18 -文件读写
- QT5入门之20 -QT读写ini文件
- QT5入门之21 -QT读写注册表
- Qt5菜鸟入门(3):文件的读写和输出
- Qt5 文件读写
- QT5入门之17 - 文件选择对话框
- Qt5.8 读写txt文件
- Android开发入门之读写文件
- qt5文件读写的简单用法
- QT5入门之2 - HelloWorld
- QT5入门之8 - 定时器
- QT5入门之9 - 菜单栏
- QT5入门之11 - 工具栏
- QT5入门之14 - QString
- QT5入门之26 -QLabel
- QT5入门之27 -QPushButton
- QT5入门之28 -QLineEdit
- QT5入门之30-控件
- SharePoint 2010 IT Professional -- Recycle Bin
- linux c 字符串到time_t时间转换
- Android面试题
- Leetcode -- Insert Interval
- 用Picasso的RequestHandler进行自定义加载的方法
- QT5入门之18 -文件读写
- Newtonsoft.Json解析数组的小例子
- leetcode 268 : Missing Number
- mysql导入csv格式数据
- yaw roll pitch matrix
- IO - 同步,异步,阻塞,非阻塞
- 数据库:替代变量笔记
- 解析UML九种图
- MySQL Study之--MySQL innodb引擎备份工具XtraBackup之一(Install)