Xojoをどうぞ

DateTimeクラスのバグ?

2 コメント
views

Xojoのオブジェクトは生成される時にメンバ内を初期化されています。
例えばNilであったり、0(ゼロ)、emptyに。

DateTimeクラスのSecondsFrom1970というメンバはDateTime.Nowで作成した場合でも、正しい値を
保持していません。
試しにSQLDateの"1970-01-01 00:00:00"を使って生成しても、SecondsForm1970は0になっていないので
注意が必要です。

ひろやん
作成: 2024/10/08 (火) 08:22:44
通報 ...
1
ひろやん 2024/10/10 (木) 12:37:10

大変、失礼しました。私がドキュメントを正しく解釈していなかった様です。

Var theDate As DateTIme = New DateTIme( 1970 , 1, 1, 0, 0, 0, 0, TimeZone.Current )
で SecondsFrom1970は−9時間を戻していました。

Var theDate As DateTIme = New DateTIme( 1970 , 1, 1, 0, 0, 0, 0, New TimeZone( "GMT" ) )
では、SecondsFrom1970は0となっておりました。

せっかちな物でドキュメントを良く読まないために余計な情報を記載してしまい。申し訳ありませんでした。

2
ひろやん 2024/10/10 (木) 12:43:45 >> 1

−9時間は秒数にして−32400秒ですので、SecondsFrom1970は正しく-32400を戻していた訳です。(^o^)