作者JustinHere (良葛格)
看板java
標題Re: [問題] 有關轉換時間
時間Sat Jun 14 16:36:00 2014
※ 引述《iamsewei (翠玉林志玲)》之銘言:
: 我有一個64bitn windows number 的時間字串
: 1396487878
: 在stackoverflow找到的方法
: http://ppt.cc/Ks6o
: 卻不會使用....
: Date date = new Date((1396487878));
: Log.i("main","cover date= "+date);
: 在android 上面我使用這樣印出來發現時間 是1970....不知道我哪裡有問題
: 希望熟悉的大大可以教一下 感謝Q_Q 網路沒甚麼資料
除了其他人解決的問題之外,這邊要提醒一下,可以的情況下,
別用或別相信Date的toString傳回的時間描述…
Date實例的時區無法變換,也不建議使用toString()來得知年月日等欄位資訊,
toLocaleString()、toGMTString()這兩個方法也被廢棄了,也就是說,有關於
字串時間格式的處理,不再是Date的職責。
有關字串時間格式的處理,職責落到了java.text.DateFormat…要取得時間的
各個欄位,或者是對時間日期進行操作,可以使用Calendar...
對於更複雜的時間計算,如果使用JDK8,那就用JSR310吧!之前的JDK,那就用
Joda-Time…
順便談一下〈機器的時間觀與人的時間觀〉…
http://www.ithome.com.tw/voice/88489
--
良葛格學習筆記
http://openhome.cc
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.9.218.118
※ 文章網址: http://webptt.com/m.aspx?n=bbs/java/M.1402734965.A.A1A.html
1F:推 hiigara:這年頭「輸出日期字串」這件事情被搞的有夠複雜.... 06/15 15:04
3F:推 yyc1217:我好開心jdk8有民國年的東東 06/15 16:53
新日期時間API中,MinguoChronology是中華民國年曆,也就是台灣通行的年曆系統,
與之搭配的主要類別是MinguoDate,實作了Temporal、TemporalAdjuster與
java.time.chrono.ChronoLocalDate介面,新日期時間API的LocalDate類別也實作了
ChronoLocalDate介面。來看個簡單的範例,將西元年月日轉換為民國年月日:
LocalDate birth = LocalDate.of(1975, 5, 26);
MinguoDate mingoBirth = MinguoDate.from(birth);
out.println(mingoBirth); // Minguo ROC 64-05-26
如果想要同時表示民國日期與時間,可以如下取得ChronoLocalDateTime<MinguoDate>:
out.println(
MinguoDate.of(64, 5, 1)
.atTime(LocalTime.of(3, 30, 0))); // Minguo ROC 64-05-01T03:30
實際上,新日期時間API中LocalDateTime,也實作了ChronoLocalDateTime介面,
想要瞭解如何自定義年曆系統,從MinguoChronology的原始碼中研究,是個不錯的
起點。
※ 編輯: JustinHere (101.14.251.186), 06/16/2014 09:18:52
4F:推 lovdkkkk:Minguo... 這類別名好貼心啊 @@ 06/16 09:26
5F:推 NullLife:推良葛格~ 06/17 09:47
6F:推 hgs1906:感謝您的分享 謝謝 06/17 14:52
7F:推 Gismudis:我是看您的網站長大的 06/20 19:03
8F:推 dream1124:哇~ 良葛格出現啦~ 06/25 23:17