我想记录System.currentTimeMillis()用户在我的程序中开始使用时的时间.当他完成后,我会减去当前System.currentTimeMillis()从start变量,我想向他们展示使用人类可读的格式经过诸如"XX小时XX分钟,XX秒",甚至是"XX分钟,XX秒",因为它的时间一个小时不太可能带人
最好的方法是什么?
我想用H:MM:SS这样的模式格式化持续时间(以秒为单位).java中的当前实用程序旨在格式化时间而不是持续时间.
我想找出当前系统时间与插入数据和时间之间的差异String.我试过这个:
try {
String strFileDate = "2012-04-19 15:15:00";
DateFormat formatter2 = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
Date date = formatter2.parse(strFileDate);
long difference = date.getTime() - System.currentTimeMillis();
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(difference);
Toast.makeText(getBaseContext(),
formatter2.format(calendar.getTime()), Toast.LENGTH_LONG)
.show();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
但它没有给我正确的结果.我做得对吗?
我试着跟着::
String strFileDate = "2012-04-19 15:15:00";
DateFormat formatter2 = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
Date date = formatter2.parse(strFileDate);
long diffInMs = date.getTime()
- new Date(System.currentTimeMillis()).getTime();
long diffInSec = TimeUnit.MILLISECONDS.toSeconds(diffInMs);
long hour = diffInSec …Run Code Online (Sandbox Code Playgroud) "输出应该是这样的(回输输入是个好主意):你输入了500,000秒,即5天,18小时,53分钟和20秒.(5天18:53:20小时)
所以你们可以告诉我应该怎么做,理解和做到最简单的方法是什么,请帮助大家,我真的卡住了,他说"没有硬编码",我不确定它是什么但是我认为他希望我们为它们分配常量.