我需要一个日期的字符串格式,如“3.456”(3秒和456毫秒),但毫秒无法正常工作
当游戏以System.currentTimeMillis(); 开头时,gameStart将被填充
loopStart = System.currentTimeMillis();
long prueba = loopStart-gameStart;
puntuacionString = (String) DateFormat.format("mm.ss.SSS", prueba);
它在第一秒返回类似“00.01.SSS”的东西,我做错了什么?
答案 0 :(得分:2)
尝试使用与SimpleDateFormat
相同的格式
SimpleDateFormat formatter = new SimpleDateFormat("mm.ss.SSS");
loopStart = System.currentTimeMillis();
long prueba = loopStart-gameStart;
puntuacionString = formatter.format(new Date(prueba));
答案 1 :(得分:2)
DateFormat.format无法识别.SSS格式选项。您必须使用SimpleDateFormat对象,因为它支持以您希望的方式格式化数据。尝试实例化它并将时间传递给格式化,如下所示:
loopStart = System.currentTimeMillis();
long prueba = loopStart-gameStart;
SimpleDateFormat date = new SimpleDateFormat("mm.ss.SSS");
puntuacionString = date.format(prueba);