Java以智能方式将秒转换为时间
发布时间:2020-12-15 04:46:19 所属栏目:Java 来源:网络整理
导读:我想创建一个库,因为我找不到一个将秒或毫秒转换成时间.我的意思是: 1)如果我有61秒,时间格式为:1:01(不是1:1) 2)如果我相当于1小时1分钟,我希望它显示相同:1:01:00 我通过以下结构实现了这一目标: public String secondsToTime(int seconds){ Strin
我想创建一个库,因为我找不到一个将秒或毫秒转换成时间.我的意思是:
1)如果我有61秒,时间格式为:1:01(不是1:1) 2)如果我相当于1小时1分钟,我希望它显示相同:1:01:00 我通过以下结构实现了这一目标: public String secondsToTime(int seconds){ String format = ""; int currentMinutes = 0,currentHour = 0; if((seconds / 60) > 0 ) { currentMinutes = seconds / 60; seconds = seconds - currentMinutes * 60; } if(currentMinutes >= 60) { currentHour = currentMinutes / 60; currentMinutes = currentMinutes - currentHour * 60; } if(currentHour == 0) { if(currentMinutes < 10 && seconds < 10) format = "0"+currentMinutes+":0"+seconds; else if(currentMinutes > 9 && seconds < 10) format = currentMinutes+":0"+seconds; else if(currentMinutes > 9 && seconds > 9) format = currentMinutes+":"+seconds; else if(currentMinutes < 10 && seconds > 9) format = "0"+currentMinutes+":"+seconds; } else { Log.i("TEST","Current hour este" + currentHour); if(currentMinutes < 10 && seconds < 10) format = currentHour+":0"+currentMinutes+":0"+seconds; else if(currentMinutes > 9 && seconds < 10) format = currentHour+":"+currentMinutes+":0"+seconds; else if(currentMinutes > 9 && seconds > 9) format = currentHour+":"+currentMinutes+":"+seconds; else if(currentMinutes < 10 && seconds > 9) format = currentHour+":0"+currentMinutes+":"+seconds; } return format; } 有更快的方法吗? 这个问题不重复,因为如果你想显示我想要的格式,java.util.concurrent.TimeUnit不遵循标准. 我正在进行此搜索并询问这些问题,因为我想将此算法用于Android上的媒体播放器,以显示总歌曲时间和当前歌曲的第二部分. 例如,我有一些超过一小时的混音和几分钟的音乐,与播放音乐文件的总时间00:02:30无关,正确的方法是:2:30因为没有时间(小时== 0)如果音乐文件有2分3秒,说2:3不正确,正确的方式是2:03. 解决方法
只需将其转换为字符串并切断前导字符,只要它为“0”或“:”即可
DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); String myDate = dateFormat.format(new Date(TimeUnit.SECONDS.toMillis(seconds))); while (( myDate.charAt(0).equals("0") || myDate.charAt(0).equals(":")){ myDate = myDate.substring(1); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |