我的目录中有两种命名文件模式。
模式1:
'XXXXXX FixedCost_zz123.mat'
模式2
'XXXXXX FixedVolume.mat'
因此,基于上面我的文件夹中的一些实际文件示例是:
'Sap FixedCost_pkz123.mat'
'ASDFG FixedCost_z1.mat'
'TUP112RA FixedCost_h1453.mat'
'as FixedVolume.mat'
'P1234L FixedVolume.mat'
'afg FixedVolume.mat'
我希望能够根据我在任何实例中需要的内容找到'FixedCost'和'FixedVolume'类型的所有文件。我该如何实现这一目标?我对函数的输入可能是'FixedCost'或'FixedVolume'。
答案 0 :(得分:5)
您可以将dir
函数与指定文件名模式的参数一起使用:
fixedCostFiles = dir('*FixedCost*.mat');
fixedVolumeFiles = dir('*FixedVolume.mat');
如果你想要更复杂的选择并且不怕java,你也可以使用apache FileUtils,它们是MATLAB的java的一部分:
http://commons.apache.org/proper/commons-io/apidocs/org/apache/commons/io/FileUtils.html
具体来说,请检查listFiles
功能。
答案 1 :(得分:2)
这将返回名称为
的特定通配符的所有文件file_list_1 = dir(fullfile(directory_path, '*FixedVolume*.mat'))
file_list_2 = dir(fullfile(directory_path, '*FixedCost_zz123*.mat'))
答案 2 :(得分:0)
还可以看到“匹配”或“令牌”选项