DateTime

常用時(または物理時間)を表します。

この型は、次のいずれかの方法で常用時を表すことができます。

  • utcOffset を設定し、timeZone を設定しない場合: UTC から特定のオフセットがある暦日の常用時。
  • timeZone を設定し、utcOffset を設定しない場合: 特定のタイムゾーンにおける暦日の常用時。
  • timeZone も utcOffset も設定しない場合: 暦日の常用時(現地時間)。

日付は先発グレゴリオ暦を基準にしています。

年、月、日が 0 の場合は、DateTime に具体的な年、月、日が指定されていないとみなされます。

この型は、すべての日付と時刻のフィールドが設定され、time_offset oneof のいずれかのケースが設定されている場合、物理時間を表すために使用されることもあります。代わりに、物理時間に Timestamp メッセージを使用することを検討してください。ユーザーのタイムゾーンも保存する場合は、別のフィールドで保存できます。

この型は、一部のアプリケーションが求めるよりも柔軟性が高い場合があります。アプリケーションの制限事項を文書化して検証してください。

JSON 表現
{
  "year": integer,
  "month": integer,
  "day": integer,
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer,

  // Union field time_offset can be only one of the following:
  "utcOffset": string,
  "timeZone": {
    object (TimeZone)
  }
  // End of list of possible types for union field time_offset.
}
フィールド
year

integer

省略可。日付の年。1~9999、または日時に年を指定しない場合は 0 にする必要があります。

month

integer

省略可。月。1~12、または日時に月を指定しない場合は 0 にする必要があります。

day

integer

省略可。日。1~31(年と月に対して有効な値)、または日時に日を指定しない場合は 0 にする必要があります。

hours

integer

省略可。時間(24 時間形式)。0~23 で指定します。デフォルトは 0(午前 0 時)です。API ではビジネスの終了時間などのシナリオにおいて、値 "24:00:00" を許可することもできます。

minutes

integer

省略可。分。0~59 で指定します。デフォルトは 0 です。

seconds

integer

省略可。秒。通常は 0~59 で指定します。デフォルトは 0 です。API がうるう秒を許可する場合、値 60 が許可されます。

nanos

integer

省略可。秒の小数部分(ナノ秒単位)。0~999,999,999 で指定します。デフォルトは 0 です。

共用体フィールド time_offset。省略可。DateTime の UTC オフセットまたはタイムゾーンを指定します。タイムゾーン データは将来変更される可能性があるため、慎重に選択してください(たとえば、国が夏時間の開始日と終了日を変更し、影響を受ける範囲の将来の DateTime がすでに保存されている場合など)。省略した場合、DateTime は現地時間とみなされます。time_offset は次のいずれかになります。
utcOffset

string (Duration format)

UTC オフセット。-18 時間から +18 時間の範囲で、秒数を整数で指定します。たとえば UTC オフセットが -4 時間の場合は、{ seconds: -14400 } と表します。

s で終わる小数点以下 9 桁までの秒単位の期間。例: "3.5s"

timeZone

object (TimeZone)

タイムゾーン。