最近在做京东商城的二手商城项目中,由于拍卖的商品会存在倒计时的问题。就简单些了个秒数或分钟数转换为时分秒格式的方法。现在分享出来,如果有更好的方法还请指教了。
C#代码如下:
////// 将分钟转换为时分的格式 /// /// 分钟 ///public static string GetFormatTime(int minutes) { int day = (int)Math.Floor(Convert.ToDouble(minutes / 1440)); int hour = day > 0 ? (int)Math.Floor(Convert.ToDouble((minutes - day * 1440) / 60)) : (int)Math.Floor(Convert.ToDouble(minutes / 60)); int minute = hour > 0 ? minutes - day * 1440 - hour * 60 : minutes; string time = ""; if (day > 0) time += day + "天"; if (hour > 0) time += hour + "小时"; if (minute > 0) time += minute + "分钟"; return time; } /// /// 将秒数转换为时分秒的格式 /// /// 秒数 ///public static string GetFormatTime(string data) { int seconds; if (Int32.TryParse(data, out seconds)) { //0的话,页面刷新,-100表示拍卖结束 if(seconds <=0) return data; int minutes = (int)Math.Floor(Convert.ToDouble(seconds / 60)); seconds = seconds - minutes * 60; return GetFormatTime(minutes) + (seconds > 0 ? seconds + "秒" : ""); } return data; }
JS代码如下:
//格式化分钟为时分 function formatMinutes(minutes){ var day = parseInt(Math.floor(minutes / 1440)); var hour = day >0 ?Math.floor((minutes - day*1440)/60) :Math.floor(minutes/60); var minute = hour > 0 ? Math.floor(minutes -day*1440 - hour*60) :minutes; var time=""; if (day > 0) time += day + "天"; if (hour > 0) time += hour + "小时"; if (minute > 0) time += minute + "分钟"; return time; } //格式化秒数为时分秒 function formatSeconds(seconds) { if(seconds >0){ var minutes = Math.floor(seconds/60); seconds = seconds - minutes * 60; return formatMinutes(minutes) + (seconds > 0 ? seconds + "秒" : ""); } return seconds; }
Speak Your Mind