我有一個Lotus Domino服務器坐在CET/CEDT。LotusNotes DateTime對象和時區物業
該服務器上的電子郵件有DeliveredDate,也許在同一個時區,也許不是,但我們把它設置爲2014-03-01 11:01:38 CET
。
我有第二件事是另一個時區的一些「經典時區字符串」,讓我們說Z=-4$DO=0$...$ZN=Arabian
我怎樣才能 - 在LotusScript ServerTask - 在DeliveredDate轉換爲通過上述時間段所代表的時區串?
如果一些的LotusScript servertask把該日期爲NotesDateTime
對象,我可以得到性能LSLocalTime
,這是CET,LSGMTTime
,這是GMT,而ZoneTime
,這當然也返回CET。功能包括ConvertToZone
,其不採取一個字符串,和未記錄的merge
,這改變了時間,使得11:01 CET變爲11:01 AST(8:01 CET)。
但2014年3月1日11:01 CET的交付日期應該成爲2014年3月1日14:01 AST;
和交付日期2014-04-01 11:01 CEDT應成爲2014-04-01 13:01 AST。
怎麼樣?
該時區字符串從哪裏來?什麼是格式?這不是我以前見過的。據我所知,LotusScript語言或Domino對象沒有任何東西可以解釋這樣的字符串 - 但是如果你更多地解釋它,這裏的某個人可能會提出一些建議。順便說一下:ConvertToZone方法的侷限性在於,它只考慮夏令時時間規則用於轉換區域,而不是轉換後的區域,而這僅僅是一個相當重要的問題。 –
字符串(以所謂的「規範時區格式」)取自用戶配置文件。 – Alexander
嗯...有趣。似乎是IBM的發明。這裏記錄:http://www-01.ibm.com/support/docview.wss?uid=swg21163045我不知道支持它的公共API中的任何功能,即使它編碼DST信息我提到的限制上面的ConvertToZone使它沒有那麼有用。我很希望這是一種基於標準的格式,在Java中得到了支持,所以你可以通過LS2J調用一些有用的函數。 –