數據庫中存放的視頻時長是一個Long類型的毫秒/秒時間,現在需要把這個時間轉換成標准的視頻時長格式,在我看來這應該是一個很常用的轉化有一個很常用的轉換方法工具才對,可是我百度找了許久,沒有一個簡單直觀的工具類剛好滿足我的需求,好吧,找不到更好,那我自己寫一個工具類自己用,同時也方便以后大家需要,供大家參考參考!
import java.util.Date; public class VideoTimeUtil { /** * 毫秒時間 * Long類型時間轉換成視頻時長 */ public static String format(Long time){ if(time == null){ return null; }else{ Date date = new Date(time); long hour = time/(60*60*1000); long minute = (time - hour*60*60*1000)/(60*1000); long second = (time - hour*60*60*1000 - minute*60*1000)/1000; return (hour==0?"00":(hour>10?hour:("0"+hour)))+":"+(minute==0?"00":(minute>10?minute:("0"+minute)))+":"+(second==0?"00":(second>10?second:("0"+second))); } } /** * 時間為秒 * Long類型時間轉換成視頻時長 */ public static String formatTime(Long time){ if(time == null){ return null; }else{ Date date = new Date(time); long hour = time/(60*60); long minute = (time - hour*60*60)/60; long second = time - hour*60*60 - minute*60; return (hour==0?"00":(hour>10?hour:("0"+hour)))+":"+(minute==0?"00":(minute>10?minute:("0"+minute)))+":"+(second==0?"00":(second>10?second:("0"+second))); public static void main(String args[]){ Long time = 6556L; String format = VideoTimeUtil.formatTime(time); System.out.println(format); } }
以上main方法輸出結果如下:

