使用函数包括
dir()函数浏览指定路径下所有的文件
path = "" % 绝对路径或者相对路径
filelist = dir(path) % filelist中以结构体形式存放path路径下的所有文件名,结构体结构如下
filelist =
包含以下字段的 31×1 struct 数组:
name % 文件名
folder % 文件的绝对路径
date % 写入时间
bytes % 字节数
isdir %是否为文件夹 是:1 否:0
datenum %日期数
strsplit()函数,matlab中的字符串分割函数
sur = strsplit(filelist(1).name, '.') %以‘.’分割字符串, 分割后将字符串存放在cell数组中,可以以索引,如sur{1}来获得截取的字符串
strcmp()字符串比较函数
if strcmp(sur{end}, 'fig') == 1
fprintf("该文件是figure文件")
else
fprintf("该文件不是figure文件")
end
以下为全部实现代码:
path = input("请输入文件路径:\n")
try:
filelist = dir(path)
except:
path = input("请输入正确的文件路径:\n")
filelist = dir(path)
end
for i = 1:1:length(filelist)
suf = strsplit(filelist(i).name, '.');
if length(suf) < 2 % 不是以后缀名结尾的文件
contine
else
if strcmp(suf{2}, 'fig') == 1
fig = openfig(strcat(path, '\', filelist(i).name))
saves(fig, strcat(path, '\', suf{1}, '.png'), 'png') %保存为png格式的图片
end
end
end