我使用这个简单的代码在事件发生时重命名文件:
String newFileName = oldFileName + "_" + new Date().getTime();
如果事件发生的时间越来越多我会有一个字符串: myfile_1372933712717_1372933715279_1372933716234
虽然我想只有最后一个时间戳... 当然我可以做一个子串来删除“_”之后的字符串并用新的时间戳替换它,但是假设我将有一个文件,如:myfile_mycomment ... mycomment将被替换,这不是一件好事...... 那么如何才能识别出文件名中是否已有文件戳?!?
答案 0 :(得分:2)
假设您的original file name
不包含"_"
在使用"_"
附加拆分文件名之前,始终获取0th
中的string array
元素并附加timestamp
答案 1 :(得分:2)
您可以尝试使用RegEx来解决此问题,因为时间戳将始终具有相同的模式。这样,您可以区分注释和时间戳,只删除时间戳。
此代码
String test = "Hallo_Comment_1372933712717_1372933712717";
test = test.replaceAll("_1[0-9_]{12}", "");
System.out.println(test);
生成此输出
Hallo_Comment