joda time遇到的坑

2021-07-05 10:42:13 字數 1060 閱讀 3812

system.out.println(datetime.parse("2015092408", datetimeformat.forpattern("yyyymmddhh")).getmillis());

system.out.println(datetime.parse("2015092408", datetime format.forpattern("yyyymmddhh")).getmillis());

兩段**列印時間 不一樣,第乙個才是正確的解析,大師看到這裡肯定會發笑:「yyyy」與「yyyy」不一樣,確實是個很低階的錯誤,類似的linux下date命令規範,這裡做個腦補,提醒自己pattern格式不能想當然:

y:year(15)

y:year(2015)

m:月份,(文字,數字)

d:    day of month (數字)

d: day of year (數字)

a: 上午、下午(am pm)

h: 小時(1-12)

h: 小時(0-23)

k: 小時(1-24)

m:分鐘(數字)

s:秒(數字)

s:毫秒(數字)

e:   day of week(數字)

e:day of week(文字)

w:  week of year (數字)

z:timezone(文字)

z:timezone (time zone offset)

joda-time使用datetimezone表示時區:

system.out.println(new datetime(datetime, datetimezone.forid("asia/tokyo")).tostring());

system.out.println(new datetime(datetime, datetimezone.foroffsethours(9)).tostring());

時間轉換歷來是個費時的事情,所以有兩點建議:1、不要迴圈使用時間轉換;2、如果避免不了1,盡量使用cache減少轉換

Joda Time的日常使用

初始化時間 datetime datetime new datetime 2016,07,04,11,8,55 當前時間 datetime nowtime new datetime 轉換 date string string str1 datetime.tostring yyyy mm dd hh ...

Spring Websocket 遇到的坑

1 跨域問題 經查閱官方文件springwebsocket 4.1.5版本前預設支援跨域訪問,之後的版本預設不支援跨域,需要設定 setallowedorigins override public void registerwebsockethandlers websockethandlerregi...

打包遇到的坑

android studio 錯誤 com.android.dex.dexindexoverflowexception method id not in 0,0xffff 65536 gradle中引用的包太多 android dex最大索引範圍為65536個方法 一旦超過酒會報這種錯誤 那麼此時就...