matlab的IO操作复习
Posted zzx1905
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab的IO操作复习相关的知识,希望对你有一定的参考价值。
1.xlswrite或xlsread
报错:错误使用 xlswrite (line 219);错误: 服务器出现意外情况。
解决办法:在excel选项中把com加载项中的复选框全部去掉勾选,如下图。
进入excel选项中的加载项,选择com加载项,点击转到;
把com加载项中的复选框全部去掉勾选,然后‘确定’;
最后还要打开任务管理器,在进程中把带有EXCEL字样的进程全部关掉,否则还会报错。
关闭进程完毕后,再次执行xlswrite或xlsread语句就不会报错了。
2.imfinfo、print
imfinfo查看图片信息;
print输出图像,输出图片的大小与页面设置有关,可以通过命令printpreview调用页面设置对话框;
3.fopen
格式:fid = fopen(filename,mode),mode最常见三种‘r‘、’a‘、’w+‘;返回文件标识符;
返回值为-1、3、4、5等等,-1代表失败,1代表标准输出(到屏幕)不需要fopen,2代表标准错误无需fopen打开,3、4...代表代开文件成功;
最后fclose(fid);
4.使用r+、w+、a+模式操作文件时,文件指针不会回到文件的开头
使用fseek函数重新定位指针位置,status = fseek(fid,offset,origin):
fseek函数的寻找范围不能超过文件尾部EOF。
5.ftell、feof和frewind
ftell函数返回文件指针当前位置,position = ftell(fid);
frewind函数是设置文件指针到文件的首部,frewind(fid);
feof(fid)判断文件指针是否指向EOF,为真返回1,否则返回0;
fid = fopen(‘file1.dat‘,‘w+‘); A = 1:10; fwrite(fid,A); fseek(fid,3,‘bof‘); fwrite(fid,11); fseek(fid,-2,‘eof‘); fwrite(fid,12);%注意,写一次(一个数)指针就会向后移动一个位置 pos = ftell(fid);%获取指针当前位置 % fseek(fid,-3,pos); fseek(fid,-3,‘cof‘);%cof代表指针当前位置 fwrite(fid,13); frewind(fid);%指针移向文件首部 data = fread(fid); fclose(fid);
6.fscanf
data = fscanf(fid,‘%3d‘),按行读取,输出列向量;
data = fscanf(fid,‘%3d‘,[m,n]),输出m*n矩阵,但是这里要注意m和n的值保证合理性;
以上是关于matlab的IO操作复习的主要内容,如果未能解决你的问题,请参考以下文章
java内存流:java.io.ByteArrayInputStreamjava.io.ByteArrayOutputStreamjava.io.CharArrayReaderjava.io(代码片段
java缓冲字符字节输入输出流:java.io.BufferedReaderjava.io.BufferedWriterjava.io.BufferedInputStreamjava.io.(代码片段