参考资料:http://cn.mathworks.com/help/matlab/ref/fread.html

注意:参考资料针对的Matlab版本号R2015a,我使用的是R2013b。

Matlab帮助文件中给出了这几种用法

  • A = fread(fileID)
  • A = fread(fileID,sizeA)
  • A = fread(fileID,sizeA,precision)
  • A = fread(fileID,sizeA,precision,skip)
  • A = fread(fileID,sizeA,precision,skip,machinefmt)

1. 其中precision规定的是“把二进制数作为什么格式的编码来识别”,如'uint8'为八位无符号型。

2. 最后这一种用法是读取一个precision字节,跳过n(由skip规定)个字节,再读取一个precision字节。但是这里要注意,“跳过n个字节”这里的字节是指的系统默认的8位字节,而不是由precision规定的字节。2015版的帮助文档写的很详细,因为有大量的例子,2013版的就很容易引起歧义。所以还是及时更新新版Matlab,至少看新版Matlab的网页帮助,他们会优化文档中含义模糊的地方.

3. 当你想一次读几个precision字节的时候(一个block),precision可以是‘N*unint8’的形式,N为每个block的precision字节数。

PS. 当文件开头需要先跳过若干数据再读取时,先用一个A = fread(fileID,sizeA,precision)移动读取指针即可,后面紧跟读取有用数据的fread()。

3. sizeA规定读取多少个precision,一般是一个正整数,可省略,R2015a帮助文件中提到sizeA可以为[a,b]形式,即把变量直接读入a行b列的矩阵,逐列写入变量,R2013b的帮助文件中没有提到,但同样可以使用。(后来我发现帮助文档里写了。。)

4. machinefmt规定二进制文件是大端(Big Endian)还是小端(Little Endian),参数是'ieee-be'和‘ieee-le’。大小端的解释详见http://blog.csdn.net/ce123_zhouwei/article/details/6971544。

Matlab中fread函数的高级使用方法及其帮助文档中容易引起歧义的地方的更多相关文章

  1. DecimalFormat 中的 # 与 0 的区别(中文帮助文档中翻译可能是错误的)

    想对数字进行格式化的时候,可能会使用到 java.text.DecimalFormat 类.中文帮助文档中,有如下符号 位置 本地化 含义 0 数字 是 阿拉伯数字 # 数字 是 阿拉伯数字,如果不存 ...

  2. PDFtoWORD_V1.1版本支持PDF文档中的文字和图片一起转化到word文档中了~

    ​    昨天菜鸟小白做了一个小软件——PDFtoWORD,作用就是将pdf文件中的文字提取出来自动转化为可编辑的word类型.但是这个软件目前也只能将文件PDF中的文字提取出来,还无法提取图片.为了 ...

  3. C# Word文档中插入、提取图片,文字替换图片

    Download Files:ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操作.图像会比阅读文字更有吸引力,而且图像是 ...

  4. 向Docx4j生成的word文档中添加布局--第二部分

    原文标题:Adding layout to your Docx4j-generated word documents, part 2 原文链接:http://blog.iprofs.nl/2012/1 ...

  5. matlab中fprintf函数的具体使用方法

    matlab中fprintf函数的具体使用方法实例如下: fprintf函数可以将数据按指定格式写入到文本文件中.其调用格式为: 数据的格式化输出:fprintf(fid, format, varia ...

  6. Python中针对函数处理的特殊方法

    Python中针对函数处理的特殊方法 很多语言都提供了对参数或变量进行处理的机制,作为灵活的Python,提供了一些针对函数处理的特殊方法 filter(function, sequence):对se ...

  7. 在LaTeX文档中插入图片的几种常用的方法

    LaTeX中一般只直接支持插入eps(Encapsulated PostScript)格式的图形文件, 因此在图片插入latex文档之前应先设法得到图片的eps格式的文件. 在LaTeX文档中插入图片 ...

  8. 详解xml文件描述,读取方法以及将对象存放到xml文档中,并按照指定的特征寻找的方案

    主要的几个功能: 1.完成多条Emp信息的XML描述2.读取XML文档解析Emp信息3.将Emp(存放在List中)对象转换为XML文档4.在XML文档中查找指定特征的Emp信息 dom4j,jaxe ...

  9. 用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理

    用matlab查找txt文档中的关键字,并把关键字后面的数据存到起来用matlab处理 我测了一组数据存到txt文件中,是个WIFI信号强度文档,里面有我们需要得到的数据,有没用的数据,想用matla ...

随机推荐

  1. Java parseInt()方法

    1.Java parseInt()方法 使用此方法得到的原始数据类型的一个特定的字符串. parseXxx()是一个静态方法,可以有一个参数或两个. java parseInt() 语法:   sta ...

  2. Office 365 SharePoint 使用Charts Web Part

    如果你在web part->业务数据下找不到Charts Web Part 可以修改你的URL https://goitmch.sharepoint.com/sites/xxxx/_layout ...

  3. 《JavaScript高级程序设计》读书笔记--(1)JavaScript简介

    概述 JavaScript是一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HT ...

  4. TF400324: Team Foundation services are not available from server…

    Quick Fix As a quick fix you can Close Visual Studio and related apps Browse to %LocalAppData%\Micro ...

  5. AngularJs的UI组件ui-Bootstrap分享(八)——Tooltip和Popover

    tooltip和popover是轻量的.可扩展的.用于提示的指令.对于移动端来讲,这两个指令虽然可以正常工作,但是从用户体验的角度并不推荐使用. 先说tooltip,tooltip有三种使用方式: ( ...

  6. Scala的第一步

    第一步:学习使用Scala解释器 开始Scala最简单的方法是使用Scala解释器,它是一个编写Scala表达式和程序的交互式“shell”.在使用Scala之前需要安装Scala,可以参考 Firs ...

  7. 扩展django的User的部分方法

    这做项目时发现django自带的User中的字段不够用,默认的auth_user表总共只有11个字段,如果需要更多的字段该怎么办,在网上搜了一下,有这么几种方法. 1. 直接修改django 源码,修 ...

  8. Dotspatial 创建面状图层

    using DotSpatial.Controls;using DotSpatial.Data;using DotSpatial.Data.Forms;using DotSpatial.Plugins ...

  9. 安装lnmp一键安装包(转)

    系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian Linux系统 需要3GB以上硬盘剩余空间 128M以上内存,Xen的需要有SWAP,OpenVZ的另外 ...

  10. 互联网实习笔记之shell笔记

    linux下面一切都是可以配置的 #vim可以有 .vimrc文件 #------.vimrc开始---- set vb t_vb= set number syntax on set hlsearch ...