我旅行了很多,我經常有約會(如航班),在一個時區開始並以另一個時區結束。我需要知道每個事件將開始和結束的本地時間和UTC時間。Google腳本/ JavaScript在時區之間轉換時間
我使用Google日曆,並在日曆事件中指定不同的開始和結束時區。
我已經寫了一個腳本,拉我的議程給定的時間段,這顯示了我在當地時間的一切,這很好。
我很難得到當地時間。
當我檢索事件時,時間顯示在我的當地時間。
我可以檢索歐洲/羅馬等格式的時區,但這並不能幫助我顯示當地時間。
附件是我的日曆條目的截圖:
這裏是如何的事件從我的腳本(從日誌文件中獲取)看到:
Start: 2017-03-29T16:35:00+01:00, startTimeZone: Europe/Berlin.
End: 2017-03-29T22:30:00+01:00, endTimeZone: Asia/Qatar
這些時間應該分別是開始:17:35和結束:00:30。
有沒有人有任何想法如何獲得本地時間或時區之間轉換?
顯示腳本的幾行內容。腳本中的任何日期代碼都使用腳本的時區作爲默認值。您的腳本擁有與日曆時區不同的自己的時區。默認情況下,時區是相同的,除非你改變它們。你在哪裏顯示你的腳本的時間?在對話框或側邊欄中?在電子表格中? –
嗨桑迪,謝謝你的回覆。我不認爲我的問題很好。我的日期格式爲「2017-03-30T01:01:00 + 01:00」,時區爲「亞洲/卡塔爾」。我想在電子表格中顯示時間爲'03:01',這是約會發生時在卡塔爾的時間。從我的腳本返回的時間是在我的日曆的當地時間,這很好。我需要根據事件發生的時區對其進行調整。夏令時開始日期和結束日期和規則不盡相同,這很難實現,所以我非常想要一種方式來說明給定日期的「亞洲/卡塔爾」是GMT +/- X小時。 – kxm
我會先看看'Utilities.formatDate()'的文檔,這可能會自動處理日光節約問題,所以你不需要自己編寫它。 [鏈接到Apps腳本文檔](https://developers.google.com/apps-script/reference/utilities/utilities#formatDate(Date,String,String)) –