MATLAB遍历子文件夹及其下文件

以前从未遇到过用MATLAB批处理文件的情况,此次项目需要批量将wav文件导入matlab进行处理,现将matlab遍历子文件夹及其文件的方法记录下来。

文件目录结构

/maindir|-- subdir1|-- datafile1.dat|-- datafile2.dat|-- subdir2|-- datafiel3.dat|-- datafiel4.dat|-- subdir3|-- datafile5.dat|-- datafile6.dat

主文件夹maindir下含有三个子文件夹,子文件夹分别包含两个二进制数据文件

函数dir

可以使用函数dir,D = DIR(‘directory_name’)返回一个结构数组,包含了文件夹directory_name下的子文件夹和子文件的一些信息,第1个成员是文件名,第4个成员表示是否为文件夹。

注意的是第1个数组元素和第2个数组元素分别是’.’和’..’,表示当前目录和上层目录。

代码实现

maindir = 'D:\MATLAB\project';
subdir  = dir( maindir );for i = 1 : length( subdir )if( isequal( subdir( i ).name, '.' )||...isequal( subdir( i ).name, '..')||...~subdir( i ).isdir)               % 如果不是目录则跳过continue;endsubdirpath = fullfile( maindir, subdir( i ).name, '*.dat' );dat = dir( subdirpath )               % 子文件夹下找后缀为dat的文件for j = 1 : length( dat )datpath = fullfile( maindir, subdir( i ).name, dat( j ).name);fid = fopen( datpath );% 此处添加你的对文件读写操作 %end
end

函数uigetdir

由于前面maindir需要指定路径,可能不是太方便。

使用uigetdir可以方便的通过对话框选择文件夹,返回值为文件夹路径名。代码如下:

maindir = uigetdir( '选择一个文件夹' );

上面的例子比较简单,只涉及到两层目录以及指定格式的文件。

对于多层目录,以及多种格式文件的处理,则可以采用层次遍历与深度遍历两种方法实现。具体操作及例子见连接MATLAB对文件夹的层次遍历和深度遍历,不再详细阐述。

MATLAB遍历子文件夹及其下文件相关推荐

  1. java ftp遍历所有子文件_Java 遍历指定文件夹及子文件夹下的文件

    Java 遍历指定文件夹及子文件夹下的文件 /** * 遍历指定文件夹及子文件夹下的文件 * * @author testcs_dn * @date2014年12月12日下午2:33:49 * @pa ...

  2. 递归遍历文件及子文件夹下的文件(该代码是复制过来修改过的,如果有侵作者权的话,请作者联系我,立即删除)...

    调用: ListFiles(new DirectoryInfo(source)); /// <summary>/// //递归遍历所有文件包括子文件夹下的文件 并对word excel p ...

  3. BAT 遍历文件夹和子文件夹下所有文件

    BAT 遍历文件夹和子文件夹下所有文件 参考网址:http://www.cnblogs.com/tangxin-blog/p/5703146.html echo off & color 0A ...

  4. VBA遍历文件夹及子文件夹中所有文件

    VBA中遍历文件方法很多,但很多方法又有局限,DIR的方法很难遍历子文件夹文件.FileSearch方法在office 2007中MS把Application对象FileSearch方法删除了.所有我 ...

  5. Python批量修改文件夹及其子文件夹下的文件内容

    前言:前几天我看一位同学要修改很多文件中的数据,该文件数据很规律,一行只有三个数,需要将每行最后一个数字改为负数,但文件有上千个,分布在每个文件夹下面以及它的多级子文件夹下,看他用excel手动改数据 ...

  6. python修改文件内容_python批量修改文件夹及其子文件夹下的文件内容

    前言:前几天我看一位同学要修改很多文件中的数据,该文件数据很规律,一行只有三个数,需要将每行最后一个数字改为负数,但文件有上千个,分布在每个文件夹下面以及它的多级子文件夹下,看他用excel手动改数据 ...

  7. java 获取子文件夹_JAVA之File类 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件...

    package ioTest.io3; import java.io.File; /* * 获取一个目录下的所有文件夹和文件,包括子文件夹和子文件 . * 并将文件夹和文件名称打印在控制台上面.并且要 ...

  8. linux 修改文件夹和子文件夹权限,Linux下设置文件夹以及子文件夹中所有文件权限...

    0x00 前言 文章中的文字可能存在语法错误以及标点错误,请谅解: 如果在文章中发现代码错误或其它问题请告知,感谢! 0x01 方法 设置文件夹及子文件夹下所有文件的读.写.可执行权限: [root@ ...

  9. c++利用windows api遍历指定文件夹及其子文件夹中的文件

    以下代码在vs2008中测试通过,利用FindFirstFile,FindNextFile函数遍历了我电脑上全路径为"C:\\Users\\v_tianboli\\Desktop\\wind ...

最新文章

  1. 如何有效地防止网站和手机APP的数据被采集?
  2. MSI文件、工具、资料
  3. 你的画像是怎么来的?推荐系统是如何找到相似用户的?
  4. 项目开发中常用JS表单取值方法
  5. 【NLP】270篇ACL 2019代码开源的论文,全在这里了!
  6. MySQL分库分表分库准备(6th)
  7. 第05篇:C#星夜拾遗之使用数据库
  8. 100人每人100元每次一人分1元给另一人问题matalb 求解
  9. 计算机磁盘读取信息,VBA如何获取电脑磁盘信息,这个方法一定要知道
  10. SQlite Android数据库的应用 Android SQLite 简易的学生成绩管理系统
  11. 快应用实现网络测速功能_网络阅卷系统应用系统功能实现情况
  12. mysql ip 访问_MySql通过ip地址进行访问的方法
  13. 两个对象值同样(x.equals(y) == true),但却可有不同的hash code,这句话对不正确?
  14. 拓端tecdat|在Python和R中使用交叉验证方法提高模型性能
  15. 在 mac 系统下播放.csf 视频的方法
  16. 分组急救技能竞赛方法在急诊专科护士培训中的运用
  17. 图片传输中的转码问题
  18. 洛谷P3879 [TJOI2010] 阅读理解 题解
  19. 关于数据库中的schema的注释
  20. python 使用os模块自动打开本地文件

热门文章

  1. 离散时间复指数序列的周期性质
  2. C# Lambda表达式
  3. Xamarin XAML语言教程Visual Studio中实现XAML预览
  4. iOS开发-关于自定义控件很值得一看的文章(一)
  5. Vaadin学习经验
  6. php简单创建多级目录
  7. CISCO路由器ADSL拨号配置
  8. php mysql操作封装_php封装MySQL数据库基本操作
  9. Verilog中状态机编码方式的选择:二进制编码(Binary)、格雷码(Gray-code)编码、独热码(One-hot)编码
  10. 算法导论中求解时间复杂度的三种方法