matlab读取二进制文件,要指定保存的数据类型

1、

a = 1,2;3,4;

fileID = fopen('hao.bin', 'wb'); % 以二进制写入模式打开文件

fwrite(fileID, a, 'uint16'); % 假设a中的数据可以表示为无符号32位整数

fclose(fileID);

fileID = fopen('hao.bin', 'rb'); % 以二进制读取模式打开文件
k = fread(fileID);

自动识别16位还是多少位,得到的k是下面的,这说明 数据保存的是

00000000 00000001 一

00000000 00000011 三

00000000 00000010 二

00000000 00000100四

在读取的时候 每16位一组来读取,正确识别了,虽然其实也是错的,因为是一个字节一读取数字

2、但是如果用k = fread(fileID,'uint32') 读取,得到的是

因为读取的时候按照32位是一个数

00000000 00000011 三 00000000 00000001 一 合起来是196609

**3、**如果直接指定正确的格式fwrite(fileID, a, 'uint16');输出的是

没有那些0了。

有0是因为,按一个字节一读取数字,现在是按照2个字节一读取数字

相关推荐
Evand J1 小时前
【MATLAB例程12】永磁同步电机基于增广无迹卡尔曼滤波的未知负载转矩在线观测
开发语言·matlab
分享资料20 小时前
MATLAB 中分号 (;)的作用
matlab
Evand J1 天前
【PMSM例程11】永磁同步电机(PMSM)基于UKF的转速与转子位置估计。附下载链接
算法·matlab·卡尔曼滤波·永磁同步电机·ukf·pmsm·位置估计
严肃小白兔2 天前
优秀 MATLAB 作者、书籍推荐:国外经典教材与技术资源整理
matlab
熊猫_豆豆3 天前
buck-boost电路MATLAB仿真
matlab·电路·电力电子技术
逆向编程4 天前
MATLAB高级数据结构:cell、struct与table深度应用
开发语言·数据结构·matlab
星夜离尘564 天前
MATLAB 刚体坐标变换:点、方向和逆变换为什么不能混用
matlab
Evand J5 天前
【PMSM滤波例程2】PMSM未知负载转矩观测EKF。MATLAB例程(负载增广EKF与实际仿真结果)。附下载链接
开发语言·matlab·电机
机器学习之心5 天前
基于贝叶斯物理信息神经网络的矿产预测与不确定性量化,MATLAB代码及复现报告
人工智能·神经网络·matlab·贝叶斯物理信息神经网络
Evand J6 天前
【PMSM例程4】PMSM电阻辨识与模型补偿EKF,MATLAB例程。附下载链接,包运行成功
开发语言·matlab·电机·ekf·卡尔曼·pmsm