java 时间戳 星期几_java自定义获取星期几、几点、几分。
/**
* @author 9082046**@qq.com
*
*/
public void out_week_hour_minute()
{
long eight_hour_ms = 8*60*60*1000;//8小時*分*秒*毫秒,時區(qū)影響,北京時區(qū):東八區(qū)。
long per_week_ms = 7*24*60*60*1000;//7天*時*分*秒*毫秒,一周。
long four_day_ms = 4*24*60*60*1000;//4天*時*分*秒*毫秒,時間戳起點(diǎn)是周四。
long per_day_ms = 24*60*60*1000;//24時*分*秒*毫秒
long per_hour_ms = 60*60*1000;//60分*秒*毫秒
long per_minute_ms = 60*1000;//60秒*毫秒
//計(jì)算方式:在時間戳的基礎(chǔ)上增加上四天,然后除以一星期的時間長度取余,
// 然后對上一步得到的余數(shù)除以一天的時間長度取商的值即是周幾。
// 注:該計(jì)算方式可能會受計(jì)算機(jī)所在時區(qū)的影響,因?yàn)槿〉臅r間戳來源于計(jì)算機(jī)。
// 對時間戳起點(diǎn)周四增加四天,調(diào)整到第四天。
// 對時間戳起點(diǎn)增加8小時,調(diào)整到東八區(qū)。
long now_ms= System.currentTimeMillis() + four_day_ms+eight_hour_ms;
long week_remainder_ms = now_ms%per_week_ms;//當(dāng)前時間距離本周周一0點(diǎn)0分0秒0毫秒的時間跨度。
long day_remainder_ms = week_remainder_ms%per_day_ms;//當(dāng)前時間距離今天0點(diǎn)0分0秒0毫秒的時間跨度。
long hour_remainer_ms = day_remainder_ms %per_hour_ms;//當(dāng)前時間距離當(dāng)前小時0分0秒0毫秒的時間跨度。
long week = week_remainder_ms/per_day_ms;
long hour? = day_remainder_ms/per_hour_ms;
long minute = hour_remainer_ms/per_minute_ms;
System.out.println("week:"+week+",hour:"+hour+",minute:"+minute);
}
友情提示,思路來源:每周都是七天,不管是否閏年、是否大小月。
總結(jié)
以上是生活随笔為你收集整理的java 时间戳 星期几_java自定义获取星期几、几点、几分。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java word模版填充_[转载]ja
- 下一篇: java调用kettle例子_Kettl