我制作了一个相机应用程序。我的问题是我想继续使用默认相机应用程序使用的逻辑命名。
EG:相机应用程序生成以下文件:
IMG_20130104_033852
IMG_20130104_033853
如果这些是我/相机文件夹中的唯一内容,理论上我应该将我的照片命名为IMG_20130104_033854
。我应该查找具有“最大”名称的图像并添加一个数字,还是有更好的解决方案来解决这个问题?
答案 0 :(得分:0)
我建议建立名称,直到你到达最后一个数字序列,然后你可以寻找最大的数字,如果你愿意,可以添加一个。
例如,基于今天的日期,您可以构建IMG_20130121_
部分。您可以执行File [] fList = f.listFiles();
,其中f
指向/camera/
目录。从那里,您可以通过在IF语句中执行fileName.startsWith("IMG_20130121_")
来检查文件。
从那里,做一个子字符串来获取最后一个下划线(_)之后的字符串数字,转换为整数,然后循环直到你完成所有整数的比较。
我为文件夹名称做了这个。独立的CD刻录设备会创建以ezb_
开头的文件夹,后跟一个数字。如果这个信息不够,我明天可以粘贴我的循环代码。
作为旁注,如果你要在IMG_20130121_
之后开始自己的命名算法,比如添加一个s或者什么东西,你仍然需要跟踪或寻找最大的数字。你可能只是实现我试图解释的东西。如果我需要澄清,请告诉我!