matlab中fopen问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中fopen问题相关的知识,希望对你有一定的参考价值。
matlab fid=fopen(['S','A',25,'-','WER','.dat'],'r') 中括号里的东西是什么意思?还有如果fopen中filename如果不填路径只填文件名,例如原本是'd:\char1.txt'改为'char1.txt',这样行不行,如果能打开,打开的路径又是在哪?
确定这个命令可以正常执行?fopen应该是只认字符串的,中间那个25应该识别不出来才对吧……如果忽略那个25,
第一个问题:matlab可以通过多种方式进行字符串合并,上面的是其中一种——通过矩阵形式 [ ‘abc’,'.txt' ] 等价于 ‘abc.txt’,即相当于fopen(‘SA25-WER.dat’),后面的‘r’代表以只读方式打开。
第二个问题,直接用文件名
(1)不是以只读方式打开,比如把‘r’换成‘w’(只写),这时默认在当前文件夹(current folder)中创建一个文件,文件名就是你输入的,如果有重名的文件,就把旧文件删了;还有一些其他的参数可供选择,可以 help fopen 看看。(2)在path文件夹中有这么个文件(比如fopen(‘aaaa.txt’)),已经把‘d:\123’文件夹加入到了path中(file——set path),则如果是只读格式,如默认时,或者如上面一样加个‘r’,就会搜索所有在path中的文件夹,寻找aaaa.txt文件,有的话(假设完整路径 d:\123\aaaa.txt)打开成功,没有就失败。 参考技术A 如果没有路径只有文件名,那就是文件必须是在当前路径下,否则就会提示找不到文件。
matlab 函数,matlab 语法1
目录
matlab中fullfile使用
f = fullfile(‘dir1’, ‘dir2’, …, ‘filename’) %fullfile构成地址字符串;
如:输入:f = fullfile(‘C:’,’Applications’,’matlab’,’fun.m’)
得到:f =C:\\Applications\\matlab\\fun.m
MATLAB中fopen、fprintf函数的用法
语法1:FID= FOPEN(filename,permission)
r 读出
w 写入(文件若不存在,自动创建)
a 后续写入(文件若不存在,自动创建)
r+ 读出和写入(文件应已存在)
w+ 重新刷新写入,(文件若不存在,自动创建)
a+ 后续写入(文件若不存在,自动创建))
w 重新写入,但不自动刷新
a 后续写入,但不自动刷新
printf函数可以将数据按指定格式写入到文本文件中。其调用格式为:
数据的格式化输出:fprintf(fid, format, variables)
按指定的格式将变量的值输出到屏幕或指定文件
fid为文件句柄,若缺省,则输出到屏幕
Matlab之fgetl函数
函数功能:从文件中读取一行数据,并去掉行末的换行符。
语法格式:tline = fgetl(fid)
fid是通过fopen函数打开文件后得到的一个整型的文件标识。fgetl从这个文件中读取一行数据并丢弃其中的换行符。
- 如果读取成功,tline容纳了读取到的文本字符串
- 如果遇到文件末尾的结束标志(EOF),则函数返回-1,即tline值为-1。
返回的字符串tline并不包含文本行的行终止符。要得到行终止符,可以使用函数fgets。
Matlab中的Inf和NaN
Matlab中的
- Inf和-Inf分别代表正无穷和负无穷
- NaN表示非数值的值
产生一般是由于0 做了分母或者运算溢出,产生了超出双精度浮点数数值范围的结果,非数值量则是因为0/0,或者Inf/Inf型的非正常运算。
注:两个NaN是不相等的。
matlab zeros函数的使用
第一步在命令行窗口中输入B=zeros(5),按回车键可以看到生成了一个5*5的零矩阵,如下图所示:
MATLAB feof和~feof函数用法
函数feof(fid) 用法:文件指针 fid 到达文件末尾时返回“真”值;否则返回“假”; ~feof 是在 feof 前加了“非”:文件指针到达文件末尾时 该表达式值为“假”;否则为“真”; while ~feof 表示 若 未读到文件末尾 则 继续 循环 while feof 表示 若 未读到文件末尾 则 终止 循环,所以只循环一次就终止
matlab中sscanf函数的用法
sscanf的基本用法如图,数据列表=sscanf(待读取数据字符串,格式字符串)
matlab中~=
matlab中~=是不等于的意思,主要用于判断两侧表达式是否不相等,如果两个值比较,是不等于的,那么返回结果为真,是等于的,那么返回结果为假
matlab subplot 用法
就是绘制子图的前后顺序
matlab中find函数
注:竖着数!!
条件:find(A==1)
例如:返回的仍然是位置!
3.返回前N个非零元素的位置,find(A,X)
例如:
4.返回最后一个非零值的位置find(A,1,‘last’)
5.返回最后一个非零值的行列位置或者A中非零元素位置
6.[a,b,v] = find(A),找出A中非零元素所在的行和列,分别存储在a和b中,并将结果放在v中.
MATLAB基本语法
3 ^ 2 % 3 raised to the power of 2
当你点击“执行”按钮,或者按“Ctrl+ E”,MATLAB执行它并返回结果:
ans = 9
另外一个例子:
sin(pi /2) % sine of angle 90o
当你点击“执行”按钮,或者按“Ctrl+ E”,MATLAB执行它并返回结果:
ans = 1
另外一个例子,
7/0 % Divide by zero
当点击“执行”按钮,或者按“Ctrl+ E”,MATLAB执行它并返回结果:
ans = Inf warning: division by zero
matlab 运算符
MATLAB分号(;)使用
MATLAB中分号(;)表示语句结束;但是,如果想抑制和隐藏 MATLAB 输出表达,表达后添加一个分号。
MATLAB特殊变量和常量
以上是关于matlab中fopen问题的主要内容,如果未能解决你的问题,请参考以下文章