关于结构体数据的读写
最近在工作中遇到一种直接按照结构体读写数据的情况,之前没有遇到记录下来!
结构体:
typedef struct CAMERAPOINT {float point_X;float point_Y;float point_Z;
} CameraPoint;
读取文件:(使用的是QT自带的库函数读取的)
CameraPoint camera_point;QString open_path = QFileDialog::getOpenFileName(this, tr("Open txt"), ".//SaveData",tr("Files (*.dat)"));if (open_path.isEmpty()) {return;}//打开文件QFile path_file(open_path);if (!path_file.open(QIODevice::ReadOnly)) {return;}int i = 0;while (!path_file.atEnd()) {i++;//读取结构体path_file.read((char *)&camera_point, sizeof(CameraPoint));qDebug() << "i:" << i << camera_point.point_X << camera_point.point_Y << camera_point.point_Z;}path_file.close();
写入文件:
FILE *fp;fp = fopen(".//SaveData.dat", "ab");fwrite(&camera_point, sizeof(CameraPoint), 640, fp);fclose(fp);
自己的理解:
数据存放在结构体开辟的内存空间,存的时候使用取地址符&来将对应地址中的数据根据定义的长度将数据放入。
关于结构体数据的读写相关推荐
- QT 使用数据流方式QDataSteam读写结构体数据
文章目录 一.QT中保存单个变量到文件中 二.使用memcpy读写结构体数据 一.QT中保存单个变量到文件中 在QT中使用QDateStream进行数据流文件读写,保存数据(QT帮助中的例子). Ex ...
- 基于结构体的二进制文件读写
基于结构体的二进制文件读写 项目介绍 工程创建 结构体的创建 写二进制文件 结果 读二进制文件 结果 参考文献 项目介绍 本次设计是为了提高读写二进制文件的效率,以约定的结构体形式进行读写操作,避免了 ...
- Arduino EEPROM对结构体数据存储和读取
Arduino EEPROM对结构体数据存储和读取 以Arduino UNO开发板为例. 注意:该示例不适用于在ESP8266上使用 EEPROM.put()或者 EEPROM.get()来对数据读写 ...
- ARM汇编语言实现peek()_ARM汇编之访问C语言结构体数据
前言 本文的写作目的在于装逼,没有要产生实际价值的意思. 前几天在做编译器的项目,有一个项目团队成员一直在问我ARM汇编能不能读C语言的结构体.我心想,我这生成ARM汇编的代码是用C++写的呀,又不是 ...
- C语言经典例71-编写函数输出结构体数据
目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 编写input()和output()函数输入,输出5个学生的数据记录. 2 分析 定义结构体,声明结构体数组,再编写函数传入结构体数组指针到 ...
- 【C 语言】文件操作 ( 学生管理系统 | 命令行接收数据填充结构体 | 结构体写出到文件中 | 查询文件中的结构体数据 )
文章目录 一.学生管理系统 二.代码示例 一.学生管理系统 前两篇博客 [C 语言]文件操作 ( 将结构体写出到文件中并读取结构体数据 | 将结构体数组写出到文件中并读取结构体数组数据 ) [C 语言 ...
- 将结构体数据存储到一段字符串string中
核心思想 指定一段内存空间存储结构体数据,然后使用一个指针强制类型转化为结构体类型的,就可以使用这个指针操作结构体相关的成员函数和变量 结构体内存只会为定义的变量进行分配内存空间,函数只进行调用,不占 ...
- Qt窗口之间传值和结构体数据
简单明了,看效果+看代码 主窗口向子窗口进行传值和传结构体数据 子窗口向主窗口进行传值和传结构体数据 子窗口界面 主窗口界面 dialog.h #ifndef DIALOG_H #define DIA ...
- linux进程内存结构体,Linux下网络编程(3)——进程间通信(IPC),共享内存,传递结构体数据...
1. 前言 多进程,总有一些交互要做,不可能各自独立. 这里是最简单的例子.一个写入,一个读取. 一个建立共享内存,写入数据. 一个读取共享内存的内容. 2. 简单例子代码 twriter.cpp 代 ...
最新文章
- 图像滤镜艺术--编码基础(Photoshop基础变换的代码实现)
- 中台不是万能药,关于中台的思考和尝试
- 使用CSS属性处理前端开发中长文本造成的内容显示重叠问题
- java ee自动生成编码_EE Servlet 3:在Servlet中生成HTML输出
- 现代软件工程 作业 结对编程 模板
- android 如何 root权限获取,如何获取android手机root权限获取
- 计算机网络考试成绩分析报告,成绩分析报告范文_成绩分析总结与反思
- 云计算学习笔记005---Hadoop HDFS和MapReduce 架构浅析
- 二叉树前序中序后序javascript_详解二叉树遍历(前序、中序、后序、层次遍历、深度优先、广度优先)...
- 盘点各大厂商的活体检测服务,哪款更适合应用开发者?
- vue+ 高德地图 热力图
- 发那科机器人xyz的方向_最全 | 发那科工业机器人示教器详细介绍
- OpenCV每日函数 对象追踪模块 Meanshift算法
- windows聚焦壁纸不更新_如何解决Win10聚焦锁屏壁纸不自动更新的问题
- 基于Struts2和hibernate的WebSocket聊天室的实现教程五:聊天机制
- js 多线程Worker
- 园区人工智能开启双创模式,“1+N”创新型组织发展成效初显...
- MySQL varchar类型可以存储多少个汉字
- React深入学习与源码解析笔记
- 看这篇C语言基础就够了(2020-04-19)