如何将当前日期和时间添加到已保存文件的名称?

时间:2016-12-08 07:54:25

标签: javascript java android datetime android-activity

我正在开展this sound recorder活动。我为活动添加了一个重启按钮以再次开始录制,但代码的问题是它覆盖了最后一个文件的新记录文件。我想编辑这部分代码。

outputFile = Environment.getExternalStorageDirectory().
    getAbsolutePath() + "/Recording" + date + time + ".3gpp";

问题是,我是编码的菜鸟,我不知道如何解释日期和时间,我不知道它是否有效。

4 个答案:

答案 0 :(得分:1)

这样的东西
    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
    String fName = String.format ("myFile_%s.txt", sdf.format(new Date ()));

感谢@FabianGünter用

制作完整的解决方案
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss"); 
outputFile = Environment.getExternalStorageDirectory(). 
             getAbsolutePath() + "/Recording" + sdf.format(new Date()) + ".3gpp";

答案 1 :(得分:0)

如果您只需要一个可以使用的唯一名称。

您可以用它来替换日期和时间。 getAbsolutePath()+“/ Recording”+ System.currentTimeMillis()+“。3gpp”;

它给出了自1970年1月1日以来的毫秒数。这通常是一个uid。并且肯定会创建独特的连续名称。

答案 2 :(得分:0)

使用此功能,它将返回带有日期和时间的唯一文件路径

var start, end;

start = new Date(2016, 11, 5);
end = new Date(2016, 11, 4);

console.log(start, end, start < end)

start = new Date(2016, 11, 3);
end = new Date(2016, 11, 4);

console.log(start, end, start < end)

答案 3 :(得分:0)

非常感谢我的朋友。但我自己找到了答案。 添加:

import java.util.Calendar;

然后添加:

Calendar cal = Calendar.getInstance(); 
int seconds = cal.get(Calendar.SECOND);
int minutes = cal.get(Calendar.MINUTE);
int hour = cal.get(Calendar.HOUR);
int date = cal.get(Calendar.DATE);
int month = cal.get(Calendar.MONTH);
int year = cal.get(Calendar.YEAR);

然后:

outputFile = Environment.getExternalStorageDirectory().
       getAbsolutePath() + "/Recording" + (year) + "-" + (month) + "-" + (date) + "-" + (hour) + "-" + (minutes) + "-" + (seconds) + ".3gpp";

它为我工作。