文档库 最新最全的文档下载
当前位置:文档库 › Matlab中的各种文件

Matlab中的各种文件

Matlab中的各种文件
Matlab中的各种文件

MATLAB中保存的各种文件

2010-07-03 16:43:00| 分类:默认分类| 标签:|字号大中小订阅

MATLAB是一个多功能集成软件,不同的功能需要使用不同的文件格式去表现,所以MATLAB的文件也有多种格式。最基本的是M文件、数据文件和图形文件,除此之外,还有MEX文件、模型文件和仿真文

件等。下面分别予以说明。

(1) M文件,以.m为扩展名,所以称为M文件。M文件是由一系列MATLAB语句组成的文件,包括命令文件和函数文件两类,命令文件类似于其他高级语言中的主程序或主函数,而函数文件则类似于子程序或

被调函数。

MATLAB众多工具箱中的(函数)文件基本上是M函数文件。因为它们是由ASCII码表示的文件,所以可由

任一文字处理软件编辑后以文本格式存放。

(2) 数据文件,以.mat为扩展名,所以又称MAT文件。在讨论工作空间窗口时已经涉及到MAT文件。显

然,数据文件保存了MATLAB工作空间窗口中变量的数据。

(3) 图形文件,以.fig为扩展名。主要由MATLAB的绘图命令产生,当然也可用File菜单中的New命令建

立。

(4) MEX 文件,以.mex或.dll为扩展名,所以称MEX 文件。MEX 实际是由MATLAB Executable缩写而

成的,由此可见,MEX文件是MATLAB的可执行文件。

(5) 模型和仿真文件,模型文件以.mdl为扩展名,由Simulink仿真工具箱在建立各种仿真模型时产生。仿

真文件以.s为扩展名。

13.如何使用MATLAB的在线帮助 ?

MATLAB的命令非常多,即使是经常使用这一软件的人,也会忘记常用的MATLAB命令。对于记住的一些命令,在使用时又可能忘记了格式。这时,可以向MATLAB系统寻求帮助。获取MATLAB指令的帮助信息有多种方法,这里介绍常用的三种。

(1)知道命令名称,不熟悉使用格式,可以用help的命令获得帮助,格式如下

help (回车) 。

例如:键入 help magic (回车) 屏幕将显示怎样使用 magic 命令求 n 阶幻方。

MAGIC(N) is an N-by-N matrix constructed from the integers 1 through N^2 with equal row and column sums.

根据帮助信息,在MATLAB环境下键入 magic(3) (回车),屏幕上会出现 3 阶幻方矩阵:

这一矩阵的每一行元素之和均为15,每一列元素之和也均为15。由此可以体会到magic这条指令的使用方法以及它的具体功能。

(2)知道命令名称的第一个英文字母,可用鼠标选择MATLAB命令窗口上方菜单栏中的“help”选项,再从下拉菜单中选择“Index”。这时,屏幕上将出现MATLAB的帮助窗口,窗口首先出现MATLAB全部命令名称的索引,索引的命令名按英文字母顺序排列。找到你所需要的命令名,用鼠标单击它,将会得到该命令的英文帮助信息。

(3)如果忘记了所要使用的命令的名称,可以根据命令的功能属于哪一类来进行分类的查找。MATLAB4.2的所有命令和语句被划分为23类。在MATLAB环境下键入指令 help (回车) 屏幕将显示出关于MATLAB的23个类的名称。

toolbox\local 本地函数库(启动MATLAB时所需的文件)

matlab\datafun 数据分析和付里叶变换(统计计算、离散卷积、快速付里叶变换)

matlab\elfun 基本数学函数(三角函数、双曲函数、指数函数、对数函数等)

matlab\elmat 基本矩阵和矩阵操作(常用矩阵、特殊变量和常数、时钟函数)

matlab\funfun 函数操作——非线性数值方法(数值积分、常微分方程求解等)

matlab\general 常用操作命令(用于日常管理、窗口控制的命令和变量)

matlab\color 色彩控制和灯光效果(关于图形的色彩和灯光效果控制命令)

matlab\graphics 图形窗口控制及一般绘图命令(清除、保持图形、做动画等)

matlab\iofun 低级文件输入/输出命令(打开、关闭文件,读写二进制文件等)

matlab\lang 语言结构和调试(MATLAB编程常用的一些命令和语句)

matlab\matfun 矩阵函数和数值线性代数(矩阵变换、矩阵分解、特征值等)

MATLAB利用了↑↓二个游标键可以将所下过的指令叫回来重覆使用。按下↑则前一次指令重新出现,之后再按Enter键,即再执行前一次的指令。而↓键的功用则是往后执行指令。

其它在键盘上的几个键如→←, Delete, Insert,其功能则显而易见,试用即知无须多加说明。

当要暂时执行作业系统(例如Dos)的指令而还要执行MATLAB,可以利用!加上原作业系统的指令,例如!dir, !format a:。

键入who可以查看所有定义过的变数名称。而键入clear则是去除所有定义过的变数名称;如果只是要去除x及y二个变数则可以键入clear x y。

Ctrl-C(即同时按Ctrl及C二个键)可以用来中止执行中的MATLAB的工作。

matlab线上说明:

在MATLAB系统中相关的线上(on-line)求助方式有三:

1.是利用help指令,如果你已知要找的题材 (topic) 为何的话,直接键

入help 。所以即使身旁没有使用手册,也可以使用help指令

查询不熟悉的指令或是题材之用法,例如help sqrt, help topic。

2.是利用lookfor指令,它可以从你键入的关键字(key-word)(即始这个

关键字并不是MATLAB的指令)列出所有相关的题材,例如lookfor

cosine, lookfor sine。

3.是利用指令视窗的功能选单中的Help,从中选取Table of Contents(目

录)或是Index(索引)。

例如

>> help sqrt

SQRT Square root.

SQRT(X) is the square root of the elements of X. Complex

results are produced if X is not positive.

>> help monkey

monkey not found.

>>* lookfor tangent

ACOT Inverse cotangent.

ACOTH Inverse hyperbolic cotangent.

ATAN Inverse tangent.

ATANH Inverse hyperbolic tangent.

ATAN2 Four quadrant inverse tangent.

COT Cotangent.

COTH Hyperbolic cotangent.

TAN Tangent.

TANH Hyperbolic tangent.

>> help atan

ATAN Inverse tangent.

ATAN(X) is the arctangent of the elements of X. See also ATAN2.

一、常用对象操作:除了一般windows窗口的常用功能键外。

1、!dir 可以查看当前工作目录的文件。!dir& 可以在dos状态下查看。

2、who 可以查看当前工作空间变量名,whos 可以查看变量名细节。

3、功能键:

功能键快捷键说明

方向左键Ctrl+B 光标向后移一个字符

方向右键Ctrl+F 光标向前移一个字符

Ctrl+方向右键Ctrl+R 光标向右移一个字符

Ctrl+方向左键Ctrl+L 光标向左移一个字符

home Ctrl+A 光标移到行首

End Ctrl+E 光标移到行尾

Esc Ctrl+U 清除一行

Del Ctrl+D 清除光标所在的字符

Backspace Ctrl+H 删除光标前一个字符

Ctrl+K 删除到行尾

Ctrl+C 中断正在执行的命令

4、clc可以命令窗口显示的内容,但并不清除工作空间。

二、函数及运算

1、运算符:

+:加,-:减,*:乘,/:除,\:左除^:幂,‘:复数的共轭转置,():制定运算顺序。

2、常用函数表:

sin( ) 正弦(变量为弧度)

Cot( ) 余切(变量为弧度)

sind( ) 正弦(变量为度数)

Cotd( ) 余切(变量为度数)

asin( ) 反正弦(返回弧度)

acot( ) 反余切(返回弧度)

Asind( ) 反正弦(返回度数)

acotd( ) 反余切(返回度数)

cos( ) 余弦(变量为弧度)

exp( ) 指数

cosd( ) 余弦(变量为度数)

log( ) 对数

acos( ) 余正弦(返回弧度)

log10( ) 以10为底对数

acosd( ) 余正弦(返回度数)

sqrt( ) 开方

tan( ) 正切(变量为弧度)

realsqrt( ) 返回非负根

tand( ) 正切(变量为度数)

abs( ) 取绝对值

atan( ) 反正切(返回弧度)

angle( ) 返回复数的相位角

atand( ) 反正切(返回度数)

mod(x,y) 返回x/y的余数

sum( ) 向量元素求和

3、其余函数可以用help elfun和help specfun命令获得。

4、常用常数的值:

p i 3.1415926…….

realmin 最小浮点数,2^-1022

i 虚数单位

realmax 最大浮点数,(2-eps)2^1022

j 虚数单位

Inf 无限值

eps 浮点相对经度=2^-52

NaN 空值

三、数组和矩阵:

1、构造数组的方法:增量发和linspace(first,last,num)first和last为起始和终止数,num为需要的数组元素个数。

2、构造矩阵的方法:可以直接用[ ]来输入数组,也可以用以下提供的函数来生成矩阵。

ones( ) 创建一个所有元素都为1的矩阵,其中可以制定维数,1,2….个变量zeros() 创建一个所有元素都为0的矩阵

eye() 创建对角元素为1,其他元素为0的矩阵

diag() 根据向量创建对角矩阵,即以向量的元素为对角元素

magic() 创建魔方矩阵

rand() 创建随机矩阵,服从均匀分布

randn() 创建随机矩阵,服从正态分布

randperm() 创建随机行向量

horcat C=[A,B],水平聚合矩阵,还可以用cat(1,A,B)

vercat C=[A;B],垂直聚合矩阵, 还可以用cat(2,A,B)

repmat(M,v,h) 将矩阵M在垂直方向上聚合v次,在水平方向上聚合h次blkdiag(A,B)以A,和B为块创建块对角矩阵

length 返回矩阵最长维的的长度

ndims 返回维数

numel 返回矩阵元素个数

size 返回每一维的长度,[rows,cols]=size(A)

reshape 重塑矩阵,reshape(A,2,6),将A变为2×6的矩阵,按列排列。

rot90 旋转矩阵90度,逆时针方向

fliplr 沿垂轴翻转矩阵

flipud 沿水平轴翻转矩阵

transpose 沿主对角线翻转矩阵

ctranspose 转置矩阵,也可用A’或A.’,这仅当矩阵为复数矩阵时才有区别

inv 矩阵的逆

det 矩阵的行列式值

trace 矩阵对角元素的和

norm 矩阵或矢量的范数,norm(a,1),norm(a,Inf)……. normest 估计矩阵的最大范数矢量

chol 矩阵的cholesky分解

cholinc 不完全cholesky分解

lu LU分解

luinc 不完全LU分解

qr 正交分解

kron(A,B)A为m×n,B为p×q,则生成mp×nq的矩阵,A的每一个元素都会乘上B,并占据p×q大小的空间

rank 求出矩阵的刺

pinv 求伪逆矩阵

A^p 对A进行操作

A.^P 对A中的每一个元素进行操作

四、数值计算

1、线性方程组求解

(1)AX=B的解可以用X=A\B求。XA=B的解可以用X= A/B求。如果A是m×n 的矩阵,当m=n时可以找到唯一解,mn,超定系统,至少找到一组解。如果A是奇异的,且AX=B有解,可以用X=pinv(A)×B返回最小二乘解

(2)AX=b, A=L×U,[L,U]=lu(A), X=U\(L\b),即用LU分解求解。

(3)QR(正交)分解是将一矩阵表示为一正交矩阵和一上三角矩阵之积,A=Q×R[Q,R]=chol(A), X=Q\(U\b)

(4)cholesky分解类似。

2、特征值

D=eig(A)返回A的所有特征值组成的矩阵。[V,D]=eig(A),还返回特征向量矩阵。

3、A=U×S×UT,[U,S]=schur(A).其中S的对角线元素为A的特征值。

4、多项式Matlab里面的多项式是以向量来表示的,其具体操作函数如下:conv 多项式的乘法

deconv 多项式的除法,【a,b】=deconv(s),返回商和余数

poly 求多项式的系数(由已知根求多项式的系数)

polyeig 求多项式的特征值

Polyfit(x,y,n)多项式的曲线拟合,x,y为被拟合的向量,n为拟合多项式阶数。

polyder 求多项式的一阶导数,polyder(a,b)返回ab的导数

[a,b]=polyder(a,b)返回a/b的导数。

polyint 多项式的积分

polyval 求多项式的值

polyvalm 以矩阵为变量求多项式的值

residue 部分分式展开式

roots 求多项式的根(返回所有根组成的向量)

注:用ploy(A)求出矩阵的特征多项式,然后再求其根,即为矩阵的特征值。

5、插值常用的插值函数如下:

griddata 数据网格化合曲面拟合

Griddata3 三维数据网格化合超曲面拟合

interp1 一维插值

(yi=interp1(x,y,xi,’method’)Method=nearest/l inear/spline/pchip/cubic

Interp2 二维插值zi=interp1(x,y,z,xi,yi’method’),bilinear

Interp3 三维插值

interpft 用快速傅立叶变换进行一维插值,help fft。

mkpp 使用分段多项式

spline 三次样条插值

pchip 分段hermit插值

6、函数最值的求解

fminbnd(‘f’,x1,x2,optiset(,))求f在x1和x2之间的最小值。Optiset 选项可以有‘Display’+‘iter’/’off’/’final’,分别表示显示计算过程/不显示/只显示最后

结果。fminsearch求多元函数的最小值。fzero(‘f’,x1)求一元函数的零点。X1为起始点。同样可以用上面的选项。

五、图像绘制:

1、基本绘图函数

plot 绘制二维线性图形和两个坐标轴

plot3 绘制三维线性图形和两个坐标轴

fplot 在制定区间绘制某函数的图像。fplot(‘f’,区域,线型,颜色)loglog 绘制对数图形及两个坐标轴(两个坐标都为对数坐标)semilogx 绘制半对数坐标图形

semilogy 绘制半对数坐标图形

2、线型:颜色线型

y 黄色 . 圆点线v 向下箭头

g 绿色-. 组合> 向右箭头

b 蓝色+ 点为加号形< 向左箭头

m 红紫色o 空心圆形p 五角星形

c 蓝紫色* 星号h 六角星形

w 白色 . 实心小点hold on 添加图形

r 红色x 叉号形状grid on 添加网格

k 黑色s 方形- 实线

d 菱形-- 虚线^ 向上箭头

3、可以用subplot(3,3,1)表示将绘图区域分为三行三列,目前使用第一区域。此时如要画不同的图形在一个窗口里,需要hold on。

=========================================================== ======

附录1.1 管理用命令

函数名功能描述函数名功能描述

addpath 增加一条搜索路径rmpath 删除一条搜索路径

demo 运行Matlab演示程序type 列出.M文件

doc 装入超文本文档version 显示Matlab的版本号

help 启动联机帮助what 列出当前目录下的有关文件

lasterr 显示最后一条信息whatsnew 显示Matlab的新特性

lookfor 搜索关键词的帮助which 造出函数与文件所在的目录

path 设置或查询Matlab路径

附录1.2管理变量与工作空间用命令

函数名功能描述函数名功能描述

clear 删除内存中的变量与函数pack 整理工作空间内存

disp 显示矩阵与文本save 将工作空间中的变量存盘

length 查询向量的维数size 查询矩阵的维数

load 从文件中装入数据who,whos 列出工作空间中的变量名

附录1.3文件与操作系统处理命令

函数名功能描述函数名功能描述

cd 改变当前工作目录edit 编辑.M文件

delete 删除文件matlabroot 获得Matlab的安装根目录

diary 将Matlab运行命令存盘tempdir 获得系统的缓存目录

dir 列出当前目录的内容tempname 获得一个缓存(temp)文件

! 执行操作系统命令

附录1.4窗口控制命令

函数名功能描述函数名功能描述

echo 显示文件中的Matlab中的命令more 控制命令窗口的输出页面

format 设置输出格式

附录1.5启动与退出命令

函数名功能描述函数名功能描述

matlabrc 启动主程序quit 退出Matlab环境

startup Matlab自启动程序

附录2 运算符号与特殊字符附录

2.1运算符号与特殊字符

函数名功能描述函数名功能描述

+ 加 ... 续行标志

- 减, 分行符(该行结果不显示)

* 矩阵乘; 分行符(该行结果显示)

.* 向量乘% 注释标志

^ 矩阵乘方! 操作系统命令提示符

.^ 向量乘方矩阵转置

kron 矩阵kron积 . 向量转置

\ 矩阵左除= 赋值运算

/ 矩阵右除== 关系运算之相等

.\ 向量左除~= 关系运算之不等

./ 向量右除< 关系运算之小于

: 向量生成或子阵提取<= 关系运算之小于等于

() 下标运算或参数定义> 关系运算之大于

[] 矩阵生成>= 关系运算之大于等于

{} & 逻辑运算之与

. 结构字段获取符| 逻辑运算之或

. 点乘运算,常与其他运算符联合使用(如.\) ~ 逻辑运算之非xor 逻辑运算之异成

附录2.2逻辑函数

函数名功能描述函数名功能描述

all 测试向量中所用元素是否为真is*(一类函数) 检测向量状态.其中*表示一个确定的函数(isinf)

any 测试向量中是否有真元素*isa 检测对象是否为某一个类的对象exist 检验变量或文件是否定义logical 将数字量转化为逻辑量

find 查找非零元素的下标

附录3 语言结构与调试

附录3.1编程语言

函数名功能描述函数名功能描述

builtin 执行Matlab内建的函数global 定义全局变量

eval 执行Matlab语句构成的字符串nargchk 函数输入输出参数个数检验

feval 执行字符串指定的文件script Matlab语句及文件信息function Matlab函数定义关键词

附录3.2控制流程

函数名功能描述函数名功能描述

break 中断循环执行的语句if 条件转移语句

case 与switch结合实现多路转移otherwise 多路转移中的缺省执行部分

else 与if一起使用的转移语句return 返回调用函数

elseif 与if一起使用的转移语句switch 与case结合实现多路转移end 结束控制语句块warning 显示警告信息

error 显示错误信息while 循环语句

for 循环语句

附录3.3交互输入

函数名功能描述函数名功能描述

input 请求输入menu 菜单生成

keyboard 启动键盘管理pause 暂停执行

附录3.4面向对象编程

函数名功能描述函数名功能描述

class 生成对象isa 判断对象是否属于某一类

double 转换成双精度型superiorto 建立类的层次关系

inferiorto 建立类的层次关系unit8 转换成8字节的无符号整数inline 建立一个内嵌对象

附录3.5调试

函数名功能描述函数名功能描述

dbclear 清除调试断点dbstatus 列出所有断点情况

dbcont 调试继续执行dbstep 单步执行

dbdown 改变局部工作空间内存dbstop 设置调试断点

dbmex 启动对Mex文件的调试sbtype 列出带命令行标号的.M文件dbquit 退出调试模式dbup 改变局部工作空间内容

dbstack 列出函数调用关系

附录4 基本矩阵与矩阵处理

附录4.1基本矩阵

函数名功能描述函数名功能描述

eye 产生单位阵rand 产生随机分布矩阵

linspace 构造线性分布的向量randn 产生正态分布矩阵

logspace 构造等对数分布的向量zeros 产生零矩阵

ones 产生元素全部为1的矩阵: 产生向量

附录4.2特殊向量与常量

函数名功能描述函数名功能描述

ans 缺省的计算结果变量non 非数值常量常由0/0或Inf/Inf获得computer 运行Matlab的机器类型nargin 函数中参数输入个数

eps 精度容许误差(无穷小) nargout 函数中输出变量个数

flops 浮点运算计数pi 圆周率

i 复数单元realmax 最大浮点数值

inf 无穷大realmin 最小浮点数值

inputname 输入参数名varargin 函数中输入的可选参数

j 复数单元varargout 函数中输出的可选参数

附录4.3时间与日期

函数名功能描述函数名功能描述

calender 日历eomday 计算月末

clock 时钟etime 所用时间函数

cputime 所用的CPU时间now 当前日期与时间

date 日期tic 启动秒表计时器

datenum 日期(数字串格式) toc 读取秒表计时器

datestr 日期(字符串格式) weekday 星期函数

datevoc 日期(年月日分立格式)

附录4.4矩阵处理

函数名功能描述函数名功能描述

cat 向量连接reshape 改变矩阵行列个数

diag 建立对角矩阵或获取对角向量rot90 将矩阵旋转90度fliplr 按左右方向翻转矩阵元素tril 取矩阵的下三角部分flipud 按上下方向翻转矩阵元素triu 取矩阵的上三角部分repmat 复制并排列矩阵函数

附录5 特殊矩阵

函数名功能描述函数名功能描述

compan 生成伴随矩阵invhilb 生成逆hilbert矩阵

gallery 生成一些小的测试矩阵magic 生成magic矩阵

hadamard 生成hadamard矩阵pascal 生成pascal矩阵

hankel 生成hankel矩阵toeplitz 生成toeplitz矩阵

hilb 生成hilbert矩阵wilkinson 生成wilkinson特征值测试矩阵

附录6 数学函数

附录6.1三角函数

函数名功能描述函数名功能描述

sin/asin 正弦/反正弦函数sec/asec 正割/反正割函数

sinh/asinh 双曲正弦/反双曲正弦函数sech/asech 双曲正割/反双曲正割函数

cos/acos 余弦/反余弦函数csc/acsc 余割/反余割函数

cosh/acosh 双曲余弦/反双曲余弦函数csch/acsch 双曲余割/反双曲余割函数

tan/atan 正切/反正切函数cot/acot 余切/反余切函数

tanh/atanh 双曲正切/反双曲正切函数coth/acoth 双曲余切/反双曲余切函数

atan2 四个象限内反正切函数

附录6.2指数函数

函数名功能描述函数名功能描述exp 指数函数log10 常用对数函数log 自然对数函数sqrt 平方根函数

附录6.3复数函数

函数名功能描述函数名功能描述abs 绝对值函数imag 求虚部函数angle 角相位函数real 求实部函数conj 共轭复数函数

附录6.4数值处理

函数名功能描述函数名功能描述

fix 沿零方向取整round 舍入取整floor 沿-∞方向取整rem 求除法的余数ceil 沿+∞方向取整sign 符号函数

附录6.5其他特殊数学函数

函数名功能描述函数名功能描述airy airy函数erfcx 比例互补误差函数

Matlab文件读取和写函数总结

Matlab读取文件函数总结 1.load读取方式 a.基本说明: 只能读取数值数据,不能读取含文本的数据;日期按数值读取。 b.调用方式: a=load(filename); c.有无分隔符限制: 无需输入分隔符,可自动识别空格、逗号、分号、制表符。 d.能否自定义读取范围: 不能。 e.适用文件类型: txt、csv。 2.importdata读取方式 a.基本说明: 可读取数值数据和含文本的数据,但是要求文本在数据的第一行或第一列。返回值分为数值部分(data)和文本部分(textdata) b.调用方式: a=importdata(filename,delm,nheaderlines); filename:文件名(如果文件在其他路径下,文件名前需加所在路径。) delm:分隔符 nheaderlines:从第nheaderlines+1行开始读取数值数据。 c.有无分隔符限制: 多列数据时需输入分隔符。若不输入分隔符,整行会被作为字符串放入一列。 d.能否自定义读取范围: 可从某一行开始读取数值数据。若使用importdata按钮,则可自定义读取范围和设置数据类型。 f.适用文件类型 txt、xls、xlsx、csv。 3.textscan读取方式 a.基本说明: 可对列按照自定义格式读取数据,必须输入每列的读取格式,可跳过某个列或几列。 按数值读取时,缺少值以NaN填补;按字符读取时,缺少值以空格填补。返回值按列放入元胞数组。 b.调用方式: c = textscan(fid,'format',n,'param',value) fid:文件指针。使用textscan函数时需先使用fopen函数打开数据文件,返回给fid 文件若不再使用,则需用fclose(fid)关闭文件。 ‘format’:定义每列的读取格式。例如%s表示按字符串读取、%d表示按整数读取、%D 按日期读取、%*表示跳过该列。level%u8表示将level1读取成1,去掉level。 ‘param’,value:这两个参数成对出现。例如’Delimiter’,’s’表示按分隔符为’,’进行读取。 c.有无分隔符限制 可自定义分隔符,不是必须的。 d.能否自定义读取范围:

MATLAB文件各种操作方法(全)

1.1 文件的打开和关闭 1.1.1 文件的打开 fopen ('filename', 'mode') mode格式有: ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。 ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。 ‘a’:在打开的文件末端添加数据。文件不存在则创建。 ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 如果rt表示该文件以文本方式打开,如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 Fopen函数两个返回值: 1、一个是返回一个文件标识(file Identifier),它会作为参数被传入其他对文件进 行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。 (如果返回的文件标识是–1,则代表fopen无法打开文件,其原因可能是文件不 存在,或是用户无法打开此文件权限); 2、另一个返回值就是message,用于返回无法打开文件的原因; 例:1-1 [f,message]=fopen('fileexam1', 'r') if f==-1 disp(message); %显示错误信息 end (若文件fileexam1不存在,则显示如下信息。 Cannot open file.existence?permissions?memory?) 例:1-2 [f,message]=fopen('fileexam2', 'r'); if f==-1 disp (message); %显示错误信息 else disp(f); end 若文件fileexam2存在,则返回f值。 1.1.2文件的关闭 Fclose(f) F为打开文件的标志,若若fclose函数返回值为0,则表示成功关闭f标志的文件;若返回值为–1,则表示无法成功关闭该文件。(打开和关闭文件比较耗时,最好不要在循环体内使用文件) 若要一次关闭打开的所有文件,可以使用下面的命令:fclose all

Matlab文件操作及读txt文件(fopen,fseek,fread,fclose)

Matlab文件操作及读txt文件(fopen,fseek,fread,fclose) matlab文件操作 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为: fid=fopen(文件名,…打开方式?) 说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下: λ…r?:只读方式打开文件(默认的方式),该文件必须已存在。 …r+?:读写方式打开文件,打开后先读后写。该文件必须已存在。λλ…w?:打开后写入数据。该文件已存在则更新;不存在则创建。 …w+?:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。λ λ…a?:在打开的文件末端添加数据。文件不存在则创建。

…a+?:打开文件后,先读入数据再添加数据。文件不存在则创建。 另外,在这些字符串后添加一个“t”,如…rt?或…wt+?,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen 函数默认的打开方式。 2)关闭文件 文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose函数,调用格式为: sta=fclose(fid) 说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(…all?)。 2、二进制文件的读写操作 1)写二进制文件 fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为: COUNT=fwrite(fid,A,precision) 说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据

MATLAB操作txt总结

使用文本文件(.txt)进行数据存取的技巧总结(相当的经典) 使用文本文件(.txt)进行数据存取的技巧总结 由于本帖内容较多,部分转自他人的心得,因此,凡转贴的地方仅用“----转----”标注,原作者略去,在此对所有原作者表示感谢! 特别说明:由于大家在 I/O 存取上以 txt 文件为主,且读取比存储更麻烦(存储的话 fwrite, fprintf 基本够用),因此下面的讨论主要集中在“txt 文件的读取”上。除了标注了“转”之外,其余心得均出于本人经验之结果,欢迎大家指正、补充。 一. 基本知识: --------------------------------------------------这是转载内容 ---------------------------------------------------- 1. 二进制文件与文本文件的区别: 将文件看作是由一个一个字节(byte) 组成的,那么文本文件中的每个字节的最高位都是0,也就是说文本文件使用了一个字节中的七位来表示所有的信息,而二进制文件则是将字节中的所有位都用上了。这就是两者的区别;接着,第二个问题就是文件按照文本方式或者二进制方式打开,两者会有什么不同呢?其实不管是二进制文件也好,还是文本文件也好,都是一连串的0和1,但是打开方式不同,对于这些0和1的处理也就不同。如果按照文本方式打开,在打开的时候会进行translate,将每个字节转换成ASCII码,而以按照二进制方式打开的话,则不会进行任何的translate;最后就是文本文件和二进制文件在编辑的时候,使用的方式也是不同的。譬如,你在记事本中进行文本编辑的时候,你进行编辑的最小单位是字节(byte);而对二进制文件进行编辑的话,最小单位则是位(bit),当然我们都不会直接通过手工的方式对二进制文件进行编辑了。 从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种: ASCII文件也称为文本文件,这种文件在磁盘中存放时每个字符对应一个字节,用于存放对应的ASCII码。例如,数5678的存储形式为: ASCII码:00110101 00110110 00110111 00111000 ↓↓↓↓十进制码: 5 6 7 8 共占用4个字节。ASCII码文件可在屏幕上按字符显示,例如源程序文件就是ASCII文件,用DOS 命令TYPE可显示文件的内容。由于是按字符显示,因此能读懂文件内容。 二进制文件是按二进制的编码方式来存放文件的。例如,数5678的存储形式为: 00010110 00101110 只占二个字节。二进制文件虽然也可在屏幕上显示,但其内容无法读懂。C系统在处理这些文件时,并不区分类型,都看成是字符流,按字节进行处理。输入输出字符流的开始和结束只由程序控制而不受物理符号(如回车符)的控制。因此也把这种文件称作“流式文

matlab文件操作及读txt文件(fopen,fseek,fread,fclose

matlab文件操作及读txt文件(fopen,fseek,fread,fclose) matlab文件操作 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为: fid=fopen(文件名,‘打开方式’) 说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下:λ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。λ λ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。λ λ‘a’:在打开的文件末端添加数据。文件不存在则创建。 λ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 另外,在这些字符串后添加一个“t”,如‘rt’或‘wt+’,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。

2)关闭文件 文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose 函数,调用格式为: sta=fclose(fid) 说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(‘all’)。 2、二进制文件的读写操作 1)写二进制文件 fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为:COUNT=fwrite(fid,A,precision) 说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据精度有:char、uchar、int、long、float、double等。缺省数据精度为uchar,即无符号字符格式。 例6.8 将一个二进制矩阵存入磁盘文件中。 >> a=[1 2 3 4 5 6 7 8 9]; >> fid=fopen('d:\test.bin','wb') %以二进制数据写入方式打开文件 fid =3 %其值大于0,表示打开成功 >> fwrite(fid,a,'double') ans = 9 %表示写入了9个数据 >> fclose(fid)

Matlab的各种数据读取、文件读写等操作汇总

Matlab 的各种数据读取、文件读写等操作汇总 MATLAB 提供了多种方式从磁盘读入文件或将数据输入到工作空间,即读取数据,又叫导入数据;将工作空间的变量存储到磁盘文件中称为存写数据,又叫导出数据。至于选择哪种机制,则根据下面两个因素决定:?用户所执行的 操作是导入数据还是导出数据;?数据的格式为文本格式、 二进制格式还是如HDF 之类的标准格式。将数据导入MATLAB 中最容易的方法就是使用导入数据模板(Import Wizard) ,使用该模板时不需要知道数据的格式,只需指定包含这些数据的文件,然后导入模板会自动处理文件内容。本章重点内容如下:? 文件的打开和关闭? 文本文件的读取?存写ASCII数据?二进制数据的读取? 二进制数据的存写? 使用I/O文件函数进行数据读写?MAT 文件的读写 2.1 文件的打开和关闭2.1.1 文件的打开无论是要读写ASCII 码文件还是二进制文件,都必须先用fopen 函数将其打开,在默认情况下,fopen 以二进制格式打开文件,它的使用语法如下:fopen ('filename', 'mode') 其中filename 表示要读写的文件名称,mode 则表示要对文件进行的处理方式,如下:rt :以只读方式(Reading)打开文件wt:以只写方式(Writing)打开文件at:以追加方式(Appending)打开文件,新内容将从原文件后面续写r+t:以同时读写方式打开文件w+t :以同时读写创建文件,原文件内容被清除

a+t :以同时读和追加(Reading and Appdending) 方式,原文件内容被保留,新内容将从原文件的后面开始At :以读写方式打开或创建文件,适用于对磁带介质文件的操作Wt :以写入方式打 开或创建文件,原文件内容被清除,适用于磁带介质文件的操作fopen 函数有两个返回值,一个是返回一个文件标志(file Identifier) ,它会作为参数被传入其他对文件进行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。如果返回的文件标识是-1,则代表fopen无法打开文件,其原因可能是文件不存在,或是用户无法打开此文件权限。另一个返回值就是message ,用于返回无法打开文件的原因。为了安全起见,最好在每次使用fopen 函数时,都测试其返回值是否为有效值。下面以脚本m 文件为例来声明文件的打开。例 2-1 %exam1.m[f,message]=fopen('fileexam1', 'r')if f==-1disp (message); % 显示错误信息end 若文件fileexam1 不存在,则显示如下信息。Cannot open file.existence?permissions?memory?... 例2-2 %exam2.m[f,message]=fopen('fileexam2', 'r');if f==-1disp (message); % 显示错误信息else disp(f);end 若文件fileexam2 存在,则返回f值。 2.1.2 文件的关闭一旦完成文件的读写,最好关闭文件,以便对其进行其他操作。这时就可以使用fclose 函数来关闭文件,其适用语法如下:fclose(f) 。其中 f 为打开文件的标志,若fclose 函数返回值为0 ,则表示成功关闭 f 标志的文件;若返回值为-1,

matlab文件操作及读txt文件

matlab文件操作及读txt文件 matlab文件操作 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为: fid=fopen(文件名,‘打开方式’) 说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下: λ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。λλ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。λ λ‘a’:在打开的文件末端添加数据。文件不存在则创建。 λ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。

另外,在这些字符串后添加一个“t”,如‘rt’或‘wt+’,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 2)关闭文件 文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose函数,调用格式为: sta=fclose(fid) 说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(‘all’)。 2、二进制文件的读写操作 1)写二进制文件 fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为: COUNT=fwrite(fid,A,precision) 说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据精度有:char、uchar、int、long、float、double等。缺省数据精度为uchar,即无符号字符格式。 例6.8 将一个二进制矩阵存入磁盘文件中。 >> a=[1 2 3 4 5 6 7 8 9]; >> fid=fopen('d:test.bin','wb') %以二进制数据写入方式打开文件

matlab文件的导入导出

GprMaxV2.0中GprMax2D输入文件的命令(1/2) 原创 修改人 修改时间 版本 微风无尘 微风无尘 2012.3.9 V1.1 实验环境: 操作系统:Windows 7 软件版本:MATLAB 7.1 & GprMaxV2.0 参考文献: GprMaxV2.0软件manual文件夹下的UserGuideV2.pdf。 GprMaxV2.0下载地址:https://www.wendangku.net/doc/ad11970073.html,/Download.html 说明:翻译得不好,还望大家见谅,因为我也是边看边译的。 3.1 GprMax2D命令的一般注意事项 为了描述GprMax2D/3D命令及其参数,我们作以下约定: f表示浮点数(如1.5或15e-1、1.5e1) i表示整数

c表示字符 str表示字符串 file表示输入文件名 所有空间距离的基本单位为米 所有时间的基本单位为秒 所有频率参数的基本单位是Hz 3.2 GprMax2D 2.0版本共有32条命令:#title: #domain: #dx_dy: #time_step_stability_factor: #time_window: #messages: #number_of_media: #nips_number: #media_file: #geometry_file: #medium: #abc_type:

#abc_order: #abc_stability_factors: #abc_optimization_angles: #abc_mixing_parameters: #pml_layers: #box: #cylinder: #x_segment: #y_segment: #triangle: #analysis: #end_analysis: #tx: #rx: #rx_box: #snapshot: #tx_steps: #rx_steps: #line_source: #excitation_file:

Matlab数据文件的读写

Matlab数据文件的读写 在编写一个程序时,经常需要从外部读入数据,或者将程序运行的结果保存为文件。MATLAB使用多种格式打开和保存数据。本章将要介绍MATLAB中文件的读写和数据的导入导出。 了解MATLAB的基本数据操作 掌握MATLAB中文本文件的读写方式 掌握MATLAB通过界面导入导出数据 了解MATLAB中的基本输入输出函数 13.1 数据基本操作 本节介绍基本的数据操作,包括工作区的保存、导入和文件打开。 13.1.1 文件的存储 MATLAB支持工作区的保存。用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入。保存工作区可以通过菜单进行,也可以通过命令窗口进行。 1. 保存整个工作区 选择File菜单中的Save Workspace As…命令,或者单击工作区浏览器工具栏中的Save,可以将工作区中的变量保存为MAT文件。 2. 保存工作区中的变量 在工作区浏览器中,右击需要保存的变量名,选择Save

As…,将该变量保存为MAT文件。 3. 利用save命令保存 该命令可以保存工作区,或工作区中任何指定文件。该命令的调用格式如下: ● save:将工作区中的所有变量保存在当前工作区中的文件中,文件名为matlab.mat,MAT文件可以通过load函数再次导入工作区,MAT函数可以被不同的机器导入,甚至可以通过其他的程序调用。 ● save('filename'):将工作区中的所有变量保存为文件,文件名由filename指定。如果filename中包含路径,则将文件保存在相应目录下,否则默认路径为当前路径。 ● save('filename', 'var1', 'var2', ...):保存指定的变量在filename 指定的文件中。 ● save('filename', '-struct', 's'):保存结构体s中全部域作为单独的变量。 ● save('filename', '-struct', 's', 'f1', 'f2', ...):保存结构体s中的指定变量。 ● save('-regexp', expr1, expr2, ...):通过正则表达式指定待保存的变量需满足的条件。 ● save('..., 'format'),指定保存文件的格式,格式可以为MAT 文件、ASCII文件等。 13.1.2 数据导入

Matlab实用操作指令

matlab编辑器的快捷键 在编辑器(Editor>中: 1> 【Tab】<或【Ctrl+]】)――增加缩进<对多行有效) 2> 【Ctrl+[】--减少缩进<对多行有效) 3> 【Ctrl+I】--自动缩进<即自动排版,对多行有效) 4> 【Ctrl+R】――注释<对多行有效) 5> 【Ctrl+T】――去掉注释<对多行有效) 6> 【Ctrl+B】――括号配对检查<对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键,请大牛们指点,其他版本没有测试过) 7> 【F12】――设置或取消断点 8> 【F5】――运行程序 matlab命令 一、常用对象操作:除了一般windows窗口的常用功能键外。 1、!dir 可以查看当前工作目录的文件。 !dir& 可以在dos状态下查看。 2、who 可以查看当前工作空间变量名, whos 可以查看变量名细节。 3、功能键: 功能键快捷键说明 方向上键 Ctrl+P 返回前一行输入 方向下键 Ctrl+N 返回下一行输入 方向左键 Ctrl+B 光标向后移一个字符 方向右键 Ctrl+F 光标向前移一个字符 Ctrl+方向右键 Ctrl+R 光标向右移一个字符 Ctrl+方向左键 Ctrl+L 光标向左移一个字符 home Ctrl+A 光标移到行首 End Ctrl+E 光标移到行尾 Esc Ctrl+U 清除一行 Del Ctrl+D 清除光标所在的字符 Backspace Ctrl+H 删除光标前一个字符 Ctrl+K 删除到行尾 Ctrl+C 中断正在执行的命令 4、clc可以命令窗口显示的内容,但并不清除工作空间。 二、函数及运算 1、运算符: +:加,-:减, *:乘, /:除, \:左除 ^:幂,‘:复数的共轭转置, <):制定运算顺序。2、常用函数表: sin( > 正弦<变量为弧度) Cot( > 余切<变量为弧度) sind( > 正弦<变量为度数)

如何在matlab中读取TXT数据文件

如何在matlab中读取TXT数据文件 文章来源:不详作者:佚名 -------------------------------------------------------------------------------- 该文章讲述了如何在matlab中读取TXT数据文件. 今天需要做个matlab读取txt文件,在网上收集了下,查到了几篇不错的,总结一下,方便大家(包括me)使用: 下面这个函数是取filein中的第line行写入fileout中的程序,如果想实现取特定几行,只要稍微修改一下就可以。 function dataout=dataread(filein,fileout,line) fidin=fopen(filein,'r'); fidout=fopen(fileout,'w'); nline=0; while ~feof(fidin) % 判断是否为文件末尾 tline=fgetl(fidin); % 从文件读行

nline=nline+1; if nline==line fprintf(fidout,'%s\n',tline); dataout=tline; end end fclose(fidin); fclose(fidout); %%%%%%%%%%%%%%%%%%%%%%%%%% 调用格式:dataout=dataread(filein,fileout,line) 如果你的txt文件数据是矩阵形式的,而没有其它的文字,用下面的程序就可以读任意行任意列的数据

a=textread('ll.txt'); t=a(1:43,4:10); 1:43是1到43行,4:10是4到10列的数据,当然也可以只读一个数据,如果你的matlab没有textread函数,直接从mathworks网站下载就行。 根据txt文档不同种类介绍不同的读取数据方法 转自:https://www.wendangku.net/doc/ad11970073.html,/youngbrave/blog/item/878db31fcd4f220f304e15bb.html 一、纯数据文件(没有字母和中文,纯数字) 对于这种txt文档,从matalb中读取就简单多了 例如test.txt文件,内容为“17.901 -1.1111 33.045 17.891 -1.1286 33.045 17.884 -1.1345 33.045” 可以在command window中输入load test.txt ,然后就会产生一个test的数据文件,内容跟test.txt中的数据一样;另一种方法是在file/import data....../next/finish 也可产生一个叫test的数据文件。 二、中英文和数据如test1.txt “你好 欢迎来到

matlab文件操作fopen,fseek,fread,fclose等

文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为: fid=fopen(文件名,…打开方式?) 说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下: …r?:只读方式打开文件(默认的方式),该文件必须已存在。λ …r+?:读写方式打开文件,打开后先读后写。该文件必须已存在。λ …w?:打开后写入数据。该文件已存在则更新;不存在则创建。λ …w+?:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。λ …a?:在打开的文件末端添加数据。文件不存在则创建。λ …a+?:打开文件后,先读入数据再添加数据。文件不存在则创建。λ 另外,在这些字符串后添加一个“t”,如…rt?或…wt+?,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 2)关闭文件 文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose函数,调用格式为: sta=fclose(fid) 说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(…all?)。 2、二进制文件的读写操作 1)写二进制文件 fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为: COUNT=fwrite(fid,A,precision) 说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据精度有:char、uchar、int、long、float、double等。缺省数据精度为uchar,即无符号字符格式。 例6.8 将一个二进制矩阵存入磁盘文件中。 >> a=[1 2 3 4 5 6 7 8 9]; >> fid=fopen('d:\test.bin','wb') %以二进制数据写入方式打开文件 fid = 3 %其值大于0,表示打开成功 >> fwrite(fid,a,'double') ans = 9 %表示写入了9个数据

MATLAB文件操作详解

matlab文件操作 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为: fid=fopen(文件名,‘打开方式’) 说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下:‘r’:只读方式打开文件(默认的方式),该文件必须已存在。 ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。 ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。 ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。‘a’:在打开的文件末端添加数据。文件不存在则创建。 ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。 另外,在这些字符串后添加一个“t”,如‘rt’或‘wt+’,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。 2)关闭文件 文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose 函数,调用格式为: sta=fclose(fid) 说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(‘all’)。 2、二进制文件的读写操作 1)写二进制文件 fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为:COUNT=fwrite(fid,A,precision) 说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用

matlab文件数据读写

MATLAB中文件输入及输出指令 一、基本文件输入输出 File import/export functions. dlmread- Read ASCII delimited file. dlmwrite- Write ASCII delimited file. importdata - Load data from a file into MATLAB. daqread- Read Data Acquisition Toolbox (.daq) data file. matfinfo- Text description of MAT-file contents. xlsread - Get data and text from a spreadsheet in an Excel workbook. xlswrite- Stores numeric array or cell array in Excel workbook. xlsfinfo - Determine if file contains Microsoft Excel spreadsheet. Formatted file I/O. fgetl- Read line from file, discard newline character. fgets - Read line from file, keep newline character. fprintf - Write formatted data to file. fscanf - Read formatted data from file. textscan - Read formatted data from text file. textread - Read formatted data from text file. File opening and closing. fopen - Open file. fclose - Close file. Binary file I/O. fread - Read binary data from file. fwrite - Write binary data to file. File positioning. feof - Test for end-of-file. ferror - Inquire file error status. frewind - Rewind file. fseek - Set file position indicator. ftell - Get file position indicator.

matlab常用基本命令

有关命令行环境的一些操作: (1) clc擦去一页命令窗口,光标回屏幕左上角 (2) clear从工作空间清除所有变量 (3) clf清除图形窗口内容 (4) who列出当前工作空间中的变量 (5) whos列出当前工作空间中的变量及信息?(6) delete <文件名> (7) which <文件名> (9) clear all (10) help <命令名> (11) save name (12) save name x y (13) load name (14) load name x y (15) diary name1.m (16) type name.m (17) what 快捷键: Ctrl+p Ctrl+n Ctrl+b Ctrl+f

Ctrl + ← Ctrl+r Ctrl + → Ctrl+l Home Ctrl+a End Ctrl+e Esc Ctrl+u Del Ctrl+d 或用工具栏上的Workspace 浏览器从磁盘删除指定文件 查找指定文件的路径 从工作空间清除所有变量和函数 查询所列命令的帮助信息 保存工作空间变量到文件name.mat 保存工作空间变量x y到文件name.mat 下载‘name’文件中的所有变量到工作空间 下载‘name’文件中的变量x y到工作空间 保存工作空间一段文本到文件name1.m 在工作空间查看name.m文件内容 列出当前目录下的m文件和mat文件 调用上一次的命令 调用下一行的命令 退后一格 前移一格

向右移一个单词 向xx一个单词 光标移到行首 光标移到行尾 清除一行 清除光标后字符 Backspace Ctrl+h 清除光标前字符Ctrl+k 清除光标至行尾字Ctrl+c 中断程序运行一.常用的窗口命令 help 启动联机帮助文件显示 what 列出当前目录下的有关文件 type 列出M文件 lookfor 对help信息中的关键词查找which 找出函数与文件所在的目录名demo 运行MATLAB的演示程序 path 设置或查询MATLAB的路径 二.有关文件及其操作的语句 cd或ls 改变当前的工作目录 cd ..显示上一层目录 pwd 显示当前目录

matlab的各种数据读取(txtdatmat等格式)文件打开关闭

matlab的各种数据读取(txt,dat,mat等格式),文件打开 关闭 MATLAB提供了多种方式从磁盘读入文件或将数据输入到工作空间,即读取数据,又叫导入数据;将工作空间的变量存储到磁盘文件中称为存写数据,又叫导出数据。至于选择哪种机制,则根据下面两个因素决定:●用户所执行的操作是导入数据还是导出数据;●数据的格式为文本格式、二进制格式还是如HDF之类的标准格式。将数据导入MATLAB中最容易的方法就是使用导入数据模板(Import Wizard),使用该模板时不需要知道数据的格式,只需指定包含这些数据的文件,然后导入模板会自动处理文件内容。本章重点内容如下:●文件的打开和关闭●文本文件的读取●存写ASCII数据●二进制数据的读取●二进制数据的存写●使用I/O文件函数进行数据读写●MAT 文件的读写 2.1 文件的打开和关闭2.1.1 文件的打开无论是要读写ASCII码文件还是二进制文件,都必须先用fopen函数将其打开,在默认情况下,fopen以二进制格式打开文件,它的使用语法如下:fopen ('filename', 'mode')其中filename表示要读写的文件名称,mode则表示要对文件进行的处理方式,可以是表2-1中的任一字符串。表2-1 文本文件打开的

模式mode意义rt以只读方式(Reading)打开文件wt以只写方式(Writing)打开文件at以追加方式(Appending)打开文件,新内容将从原文件后面续写r+t以同时读写方式打开文件w+t以同时读写创建文件,原文件内容被清除a+t以同时读和追加(Reading and Appdending)方式,原文件内容被保留,新内容将从原文件的后面开始At以读写方式打开或创建文件,适用于对磁带介质文件的操作Wt以写入方式打开或创建文件,原文件内容被清除,适用于磁带介质文件的操作fopen函数有两个返回值,一个是返回一个文件标志(file Identifier),它会作为参数被传入其他对文件进行读写操作的命令,通常是一个非负的整数,可用此标识来对此文件进行各种处理。如果返回的文件标识是–1,则代表fopen无法打开文件,其原因可能是文件不存在,或是用户无法打开此文件权限。另一个返回值就是message,用于返回无法打开文件的原因。为了安全起见,最好在每次使用fopen函数时,都测试其返回值是否为有效值。下面以脚本m文件为例来声明文件的打开。例 2-1 %exam1.m[f,message]=fopen('fileexam1', 'r')if f==-1disp (message); %显示错误信息end若文件fileexam1不存在,则显示如下信息。Cannot open file.existence?permissions?memory?... 例2-2 %exam2.m[f,message]=fopen('fileexam2', 'r');if

Matlab 的数据文件读取

Matlab 的数据文件I/ O 的实现方法 0 引言 Matlab 是一个功能强大的计算机辅助设计软件,被称为“草稿纸式的科学计算语言”,它具有强大的符号、数值计算、矩阵运算以及图形显示的功能,它被广泛地应用在数字信号处理、自动控制、图像处理、神经网络、优化设计、模糊逻辑、仿真、小波分析等方面。 Matlab 应用中常需要实现Matlab 与其他应用程序的数据共享,即需将数据文件读入Matlab 进行有效的数据处理,然后将Matlab 处理好的数据保存为数据文件,以便其他应用程序所使用。Matlab 支持多种文件格式的输入和输出,如.dat 、.txt 、.mat 、.bmp 等。在实际进行数据文件的I/ O 时常出现错误,本文详细讨论Matlab 中数据文件I/ O 的实现方法,并给出每种方法的具体实例。所有的数据文件I/ O 操作文件都在Matlab 中,无需安装专门的工具箱。数据文件I/ O 程序可分为两种基本类型:低级和高级。高级包括一些专门的函数以支持特定格式的读和写,相对而言低级则比较灵活。 1 高级数据文件I/ O 方式命令 高级数据文件I/ O 命令主要有Load 和Save 。Save 可以将Matlab 变量以ASCII 码格式或MAT存储, Load 可以读ASCII 码格式的变量或MAT 文件到Mat2lab 工作区。这两条命令的使用比较简单, (为便于读者可直接将以下文本输入计算机运行,注释采用英文) 如: %This file demonstrates the behavior of LOAD and SAVE clear all%Clear all variables x = 5 ;x2 = 10 ; %Create x and x2 whos %To ,display the variables in workspace pause %Pause so as to observe save xdata x%Save only x into xdata. mat clear all%Clear all variables load xdata%Load xdata. mat whos %Note that x is back pause x2 = 10 ; %Recreate x2 whos pause save xdata x x2%Now save using a wild card clear all%Clear all variables load xdata%Load xdata. mat whos 使用Load 和Save 还可以实现一次读多个文件或将数据存入多个文件,以Save 命令为例(Load 类似) ,程序如下: a = rand(6) ; %make a (6 3 6) random number filename = ['a1.txt';'a2.txt';'a3.txt';'a4.txt';'a5.txt';'a6.txt'; ] ; %list your file names for i=i:1ength(a) temp = a(:,i) ; save (filename (i , :) ,'temp''-ascii') ; %save to the specified file end

相关文档
相关文档 最新文档