MATLAB 删除指定文件夹内的文件夹及多个子文件夹

初入实验室,本科使用过一点matlab,遗忘的很快。索性用博客记录使用期间碰到的一些问题及解决方案。

1. 问题来源

如何使用MATLAB删除指定文件夹内的文件夹及多个子文件夹,这个问题来源于题主正在做的一个实验室项目,其中功能子函数要反复使用同一个文件夹,并且删除之前的内容。要删除的文件内容包括有多级子文件夹的文件夹、txt以及CST建模所生成的模型.cst文件。

2. 代码

2.1. MATLAB Documentation - MathWorks 中国

地址:
MATLAB Documentation - MathWorks 中国

遇到MATLAB的问题首先打开MATLAB Documentation,查找文件操作部分内容,如下:
在这里插入图片描述

2.1.1. delete - 删除文件或对象
delete *.mat	%删除当前文件夹中带有 .mat 扩展名的所有文件。
2.1.2. rmdir- 删除文件夹
  • 删除非空文件夹
[status, message, messageid] = rmdir('myfiles')			%删除空文件夹
[status, message, messageid] = rmdir('myfiles', 's')	%删除非空文件夹
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
status - 文件夹删除状态
0 | 1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
msg - 错误消息
错误消息,指定为字符向量。如果发生错误或警告,msg 将包含错误或警告的消息文本。否则,msg 为空,即 ''%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

2.2. 代码块

function deletebefore

cd('E:\TEST')		%进入所在文件夹

delete *.txt        %删除文件夹内所有.txt
delete *.cst        %删除文件夹内所有.cst

if exist('cable','dir') == 7    %检测是否存在名为'cable'的文件夹及子文件夹
files = dir('E:\TEST');         %遍历
%delete dir
filenum = length(files);
    for i = 1:filenum
        if(files(i).isdir && ~strcmp(files(i).name,'.') && ~strcmp(files(i).name,'..'))
            rmdir(files(i).name,'s')        
        end
    end   
end

end
使用MATLAB读取多个文件夹内的文件,并进行绘图可以通过以下步骤实现: 1. 确定文件夹路径:首先,我们需要确定存储数据文件的文件夹路径。假设我们有多个文件夹A、B、C中存放着我们需要读取的文件。 2. 使用dir函数获取文件信息:使用MATLAB的dir函数,以文件夹路径作为参数,可以获取该文件夹下的所有文件信息。我们可以使用一个循环结构,依次获取文件夹A、B、C中的文件信息。 3. 读取文件数据:使用MATLAB提供的相应读取函数,如xlsread读取Excel文件、load读取MAT文件、importdata读取文本文件等,根据不同文件类型选择合适的函数进行数据读取。在循环中,可以将读取到的数据存储在一个数据结构中,如cell数组或struct结构体中。 4. 绘制图形:在获取到数据后,我们可以使用MATLAB提供的绘图函数,如plot、scatter等,对数据进行可视化。根据数据的不同特点,选择合适的绘图函数进行绘制。 5. 循环处理多个文件夹:通过将上述步骤嵌套在一个循环结构中,可以依次处理多个文件夹中的文件。在每次循环中,更新文件夹路径,获取该文件夹下的文件信息,读取数据并绘制图形。这样,我们就可以对多个文件夹内的文件进行读取和绘图。 通过以上步骤,我们可以使用MATLAB读取多个文件夹内的文件,并进行相应的绘图操作。根据具体的文件类型和绘图需求,可以选择合适的函数和参数进行处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值