深圳制作网站公司哪里好,ppt模板免费下载 素材医疗,公众号运营总结,如何学网页设计基于结构体的二进制文件读写项目介绍工程创建结构体的创建写二进制文件结果读二进制文件结果参考文献项目介绍
本次设计是为了提高读写二进制文件的效率#xff0c;以约定的结构体形式进行读写操作#xff0c;避免了一个字节一个字节的多次写入读取操作#xff0c;并且能以…
基于结构体的二进制文件读写项目介绍工程创建结构体的创建写二进制文件结果读二进制文件结果参考文献项目介绍
本次设计是为了提高读写二进制文件的效率以约定的结构体形式进行读写操作避免了一个字节一个字节的多次写入读取操作并且能以特定的结构读取到二进制数据流的文件即以某种特定的协议进行读写操作。
工程创建
本次是对读写的操作的认识则创建的工程为控制台应用。
结构体的创建
分别以short、int、long long类型数据进行连续数据100次的顺序写入
#pragma pack(1) //字节对齐typedef struct
{short b;int c;long long d;
}inputInfo;写二进制文件
#include QtCore/QCoreApplication
#include inputInfo.h
#include QFileint main(int argc, char *argv[])
{QCoreApplication a(argc, argv);int count 1; //计数值//初始化结构体inputInfo myInputInfo {1,2,3};QFile file(test.dat);if (file.open(QIODevice::WriteOnly|QIODevice::Truncate)){while((count)100){file.write((char*)myInputInfo,14); //14为结构体的字节长度可以用sizeof()算出myInputInfo.b 3;myInputInfo.c 3;myInputInfo.d 3;}}file.close();
}结果 读二进制文件 #include QtCore/QCoreApplication
#include inputInfo.h
#include QFile
#include QDebugint main(int argc, char *argv[])
{QCoreApplication a(argc, argv);//读二进制文件inputInfo myInputInfo;QFile file(test.dat);if (file.open(QIODevice::ReadOnly)){while(!file.atEnd()){file.read((char*)myInputInfo,14);qDebug()myInputInfo.bmyInputInfo.cmyInputInfo.d; //输出调试}}file.close();return a.exec();
}结果 参考文献
[1] 陆文周. 魅力.实践.发现–QT5开发及实例(第三版)[M]. 电子工业出版社, 2017.