看板 java 關於我們 聯絡資訊
說好這是學生作業(我不是學生阿) 不過我想了解是否有更好的寫法 題目是計算台灣時間與其他時區的的時差 簡單說要列出所有的TimeZone AvailableID與 Asia/Taipei作計算 差幾分鐘 幾小時都要顯示出來 時間的加減這邊先不討論 我比較疑惑的 如何產生兩個時間 然後來計算兩時間的差 通常實務上顯示時差只要設好timezone 就能夠無痛產生該時區的字串 不過要產生一個新的Date(或者Calendar)與現在時區的Date做計算該怎做呢? 因為date本身並沒有標記時區 Calendar即使我getInstance時放入引數TimeZone也沒什麼改變 如: Calendar Cal = Calendar.getInstance(); Cal.setTimeZone(TimeZone.getTimeZone("Australia/North")); 該時間也不會變成Australia/North的時間 我想問的是有沒有更好的寫法?我的寫法很土砲 就是DateFormat 然後慢慢取出該時區的yyyy MM dd HH mm 最後再生一個Calendar 這樣就有兩個Calendar來做運算了... -- ╱ ◤◥╲ ╱╱◤◥你 我◤顏 ◥ △_▂△ ___ │/◤叔 敢 就 — — - - ╱ ╲ ⊙ ⊙ 動 幹 ◣_○_◢ \\\\ \│﹣ ﹣│ ◣_皿_◢ 我 你 ◥◣◥∞)///◤◢◤ 的 的 ╲┴ /─ 馬 狗 mroscarψ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.86.130.111
AmosYang:先 TimeZone.getOffset() 取得對 UTC 的 offset 然後 05/20 04:55
AmosYang:直接用兩個 TimeZone 各自對 UTC 的 offset 來算出 05/20 04:56
AmosYang:這兩個 TimeZone 之間的時差? (純嘴炮…沒在JAVA上實作這 05/20 04:58
AmosYang:題目過 XD) 05/20 05:00