Matlab:保存具有特定扩展名的文件的文件名,包含在一个文件夹中

Matlab: Saving the filenames of files with specific extension, contained in a folder

我正在开发一个函数来绘制同一文件夹中包含的许多 .csv 文件的数据。要自动执行此操作,我想将文件名保存为字符串数组,但我知道我可以用来获取文件列表的唯一函数是 dir 并通过执行

x = dir('MyFolder')

我得到一个结构数组,而不是字符串或字符或任何数组。然后,我尝试仅将结构数组的第一列(从第 3 行到末尾)保存在另一个变量上,因为文件名就在那里,但我得到的结构没有前两行。

你会怎么解决? 提前谢谢你。

files = dir('*.csv') ;   % this gives all csv files present in folder 
N = length(files) ;  % total number of files in the folder 
for i = 1:N 
    thisfile = files(i).name ; 
end

上面的files是一个结构体,里面有你csv文件的所有信息。您可以使用 files(i).name 提取文件名,其中 i = 1,2,...N。 如果你想要一个字符串中的所有文件名。使用

filenames = {files.name}' ;

上一行,将文件夹中所有 csv 文件的名称提供给元胞数组。