图片缩略图

下一个可用文件名

version 3.0.1 (8.25 KB) by 斯蒂芬。
返回下一个未使用的文件或文件夹名称。名称是通过递增编号后缀来创建的。

281下载

更新2021年5月11日

查看许可协议

编者按:该文件被选为MATLAB Central本周精选

返回下一个可用的文件名或文件夹名,通过递增编号后缀来创建名称。

有时可能需要在不知道或不需要特定数字序列的情况下保存文件,例如在大型计算期间保存临时结果或备份时。使用内部计数器是一种选择,但是当已经存在具有这些名称的文件时,或者当代码停止和启动时,或者在计算时抛出错误时,这不起作用。此函数提供了一个简单的解决方案:使用所需的文件(或文件夹)名称、所需的后缀(包括起始整数)和文件扩展名(如果有)调用该函数,它将返回下一个未使用的名称。

注意,不同于FEX上的其他提交,这个函数比较的是数字*值*,而不是字面文件名!这意味着如果“x1”或“x01”已经存在于指定的位置,您将不会得到“x001”。

% % % %的输入

需要三个文本输入(可以是字符串标量或字符向量):

1.基本的文件或文件夹名,没有文件扩展名(如果有的话)。如果要检查现有文件的位置不是当前目录,则基本名称必须使用到该位置的相对或绝对路径。

2.后缀,必须包含起始号码。后缀的例子有:'0','_1','(5)','.backup. '。0001”、“_temp_050”等。该后缀将被附加到文件/文件夹名称(在文件扩展名之前),并且该编号将递增,以标识从后缀中提供的编号开始的第一个未使用的名称。因此后缀定义:

*起始值(可以是零或任何正整数,如0、1、2等)。
*输出数字的最小长度(根据需要使用前导零)。
*任何文字字符。

3.如果需要,文件扩展名。对于没有扩展名的文件夹和文件,使用“或”。

%%示例%%

%%%当前目录包含文件A1。米”、“A2。米”和“A4.m”:

>>下一个名称('A','1','.m')
ans = ' A3.m '

> > nextname (' A ', ' 001 ', ' m ')
ans = ' A003.m '

%%%子目录'HTML'包含文件夹'B(1)', 'B(2)'和'B(4)':

> > nextname(“HTML \ B”、“(1)”,”)
ans = ' B (3) '

>>下一个名称('HTML\B','(001'),)
ans = ' B (003) '

>>nextname('HTML\B','(1',,false)%default=仅限名称。
ans = ' B (3) '
>> nextname('HTML\B','(1)', ",true) %前置与输入名相同的路径。
ans='HTML\B(3)'

引用作为

斯蒂芬(2021)。下一个可用文件名(//www.tatmou.com/matlabcentral/fileexchange/64108-next-available-filename),MATLAB中心文件交换

MATLAB版本兼容性
创建R2010b
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始打猎吧!