matlab 读取多个文件夹,Matlab连续读取多个文件

面对大量的实验文件,一次性读取多个文件运行程序显然比挨个运行省心的多。Matlab读取的文件常见的有 .txt

类型、.bmp、.jpg等图像类型,Matlab连续读取多个文件的格式大体上是一致的,只是有些许的不同。

一、连续读取 .txt 文件

方法1:

把文件的文件名按一定的规律命名,假如:filename1.txt,filename2.txt,...,fielname100.txt,在读取的时候使用循环:

for i = 1:100

fileName = ['filename' num2str(i) '.txt'];

x = load(filiName);

end

方法2:统一放在一个文件夹下,不需要统一进行重命名了:

A = dir(fullfile('d\datafile','*.txt'));

这个语句是把存放数据文件的目录d:/datafile下的所有txt文件列出来,并把这些文件名的信息存放到一个变量A中,A是一个结构体变量,只要对A进行循环就可以读取到所有文件的数据了。

二、连续读取图像文件

以 .bmp 格式为例

方法1:

把文件的文件名按一定的规律命名,假如:filename1.bmp,filename2.bmp,...,fielname100.bmp,在读取的时候使用循环:

for i = 1:100

fileName = ['filename' num2str(i) '.bmp'];

x = imread(filiName);

end

方法2:

将图像统一放在一个文件夹下,不需要统一进行重命名了,利用uigetdir函数得到你所处理图像的路径,然后对此路径下的所有图像进行处理,举例如下:处理bmp文件

如果确定文件夹目录,

A = dir(fullfile('d\picfile','*.bmp'));

for i=1:length(A)

name=A(i,1).name;

I=imread(name);

end

这个语句是把存放图像文件的目录d:/picfile下的所有.bmp文件列出来,并把这些文件名的信息存放到一个变量A中,A是一个结构体变量,只要对A进行循环就可以读取到所有的图片了。

如果未定文件夹目录,

srcDir=uigetdir('Choose source

directory.'); %获得选择的文件夹

cd(srcDir);

allnames=struct2cell(dir('*.bmp')); %只处理8位的bmp文件

[k,len]=size(allnames); %获得bmp文件的个数

for i=1:len

%逐次取出文件

name=allnames{1,i};

I=imread(name); %读取文件

end

  • 6
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值