概述
文章目录
- 0 前期教程
- 1 前言
- 2 遍历文件夹中的所有文件
- 3 文件路径合并
- 3.1 字符串合并
- 3.2 fullfile
- 4 路径拆分——fileparts
0 前期教程
- 【MATLAB】(二)基本使用拾遗
- 【MATLAB】基于油猴脚本和MATLAB下载原创力文档
1 前言
使用MATLAB进行数据分析时,首要的一般是读取文件,除了掌握常用的读写文件函数外(↑前期教程1),如果存在多个文件的情况,就会用到文件路径操作相关的函数。
2 遍历文件夹中的所有文件
当需要读取的数据文件都在一个文件夹中时,如何遍历文件夹下的所有文件,实现依次读取?最简单的方式是采用dir
函数。其语法如下所示。
dir %列出当前文件夹中的文件和文件夹
dir dirname %列出dirname对应的路径下的文件和文件夹
需要注意的是,dir
函数返回的数据形式为结构体数组(struct
),且还包含当前文件夹和上一级文件夹,即"."
和".."
。
>> A = dir
A =
包含以下字段的 21×1 struct 数组:
name
folder
date
bytes
isdir
datenum
%% 如果要索引其中的某个文件,需要先索引,再取项
>> A(2).name %对应前面提到的上一级文件夹
ans =
'..'
此外,需要注意的是,这里输入的文件夹路径参数(dirname
)是支持通配符的(主要是 * 和 ? 两个符号),比如需要提取固定后缀的文件,可以传入"xxxxx*.txt"
这样的字符串,实现只读取txt后缀的文件。
3 文件路径合并
在读取多个数据文件时,会需要得到数据文件的绝对路径,而输入的往往是数据文件所在文件夹的路径,因此就需要用到文件路径合并的方法。
3.1 字符串合并
在MATLAB中,文件路径本质上是字符串,其数据类型为char
,而在MATLAB中可以用+
来连接字符串,因此可以文件夹路径 + '' + 文件名
来得到文件的绝对路径。
3.2 fullfile
当需要合并的内容较多时,需要的加号也就越多,同时还要输入分隔符,比较麻烦,而使用
fullfile
函数就不需要考虑输入分隔符,同时还不需要考虑系统平台带来的分隔符不同的问题,更加简便。其语法如下所示。
f = fullfile(filepart1,...,filepartN)
4 路径拆分——fileparts
当已知某个文件的绝对路径时,想要获取该文件所在文件夹,就需要使用到路径拆分,同样,文件路径本质上就是字符串,因此可以用sscanf
或者正则表达式等对字符串进行分隔,但是在MATLAB中提供了一个文件路径拆分的函数,即fileparts
,其语法如下所示。
[filepath,name,ext] = fileparts(filename)
%文件夹路径 文件名(不含后缀) 文件后缀
最后
以上就是深情画板为你收集整理的【MATLAB】文件路径操作0 前期教程1 前言2 遍历文件夹中的所有文件3 文件路径合并4 路径拆分——fileparts的全部内容,希望文章能够帮你解决【MATLAB】文件路径操作0 前期教程1 前言2 遍历文件夹中的所有文件3 文件路径合并4 路径拆分——fileparts所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复