Curl Global Community

Full Version: ローカルタイムゾーンからUTCベースのタイムゾーンへの変換
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
DateTime を利用する際、DateTimeZone.local の場合、1970年から2038年の表示のみとなっていますが、
一度作成したローカルタイムゾーンで作成した有効範囲外の日付情報(たとえば1900年1月1日)を
DateTimeから取得することはできないのでしょうか。

DateTimeZone.utc のセット、clone-with-time の利用などを試しましたが、
いずれもエラーとなります。

Code:
{let dt:DateTime =
{DateTime
zone = DateTimeZone.local,
"1900-1-1"
}
}
{let dt-utc:DateTime =
{DateTime
zone = DateTimeZone.utc
}
}
{CommandButton
label= "clone1",
{on Action do
let temp-dt1:DateTime =
{dt.clone-with-time dt-utc}
{popup-message temp-dt1}
}
}
{CommandButton
label= "clone2",
{on Action do

let temp-dt2:DateTime =
{dt-utc.clone-with-time dt}

{popup-message temp-dt2}
}
}
{CommandButton
label= "set-DateTimeZone.utc",
{on Action do

set dt.zone = DateTimeZone.utc

{popup-message dt}
}
}



あ、「最初からUTCベースで作ればいいジャン」というのはごもっともなのですが、
一応今回の質問の趣旨としてローカルタイムゾーンのDateTimeありきでお願いします。

DateTimeのインスタンスを生成できること自体がおかしいと思いますが、
umemuraさんがやりたいことができません。