matlab数据读入与写出

1.文本文件
1)读入
buff = load('filename');
此命令读入的.txt文件按数据在.txt文件内的存储方式被写入到buff变量中。
以空格来分割行元素,回车来分割列元素。
要求.txt文件中必须要是十进制数据,并且行列要对其,不可以有缺省.
  1. txtname = 'D:\exam.txt';  %文件路径  
  2. txtdata = load(txtname);  
如上图所示的代码,则exam.txt文件内的数据按照原格式被读入到名为txtdata的变量当中。
matlab完全继承了C的文件读写方式,因此除了上述load函数之外,也可以直接采用fopen和fscanf相配合的方式来读取.txt文件。但是相比之下load函数则方便很多。
此外.mat文件的读入也可用load函数来实现。
2)写出
在文件保存为.txt的时候,就比较倾向于使用C风格的fopen和fprintf函数了,因为可以灵活地控制输出格式。
  1. txtname = 'D:\out.txt';  
  2. pfile = fopen(txtname,'w');  
  3. for i = 1:row  
  4.     for j = 1:col  
  5.         data = txt2(i,j);  
  6.         fprintf(pfile,'%d ',data);  
  7.     end  
  8.    fprintf(pfile, '\r\n');  
  9. end  
  10. fclose(pfile);  
这就可以按照要求的行列格式输出到.txt文件中,其中行以空格分割,列以回车分割。

2.图像文件
图像文件的读写就比较简单了,利用imread和imwrite函数就可以
img = imread(filename, format);
filename是文件名(含路径和图像格式后缀),format是打开方式,默认缺省时表示按原图像打开。上述指令表示吧图像数据读入到img中。
imwrite(img, filename);
img是存放图像数据的变量名,filename是要保存文件的名称(含路径和图像格式后缀)。
  1. imgname = 'D:\img1.png';       %图像路径  
  2. image = imread(imgname);  
  3. figure, imshow(image);  
  4. imwrite(image, 'D:\out.png');  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值