エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

DateTime.MaxValue フィールド

2013/12/12

DateTime の最大有効値を表します。このフィールドは読み取り専用です。

Namespace:  System
アセンブリ:  mscorlib (mscorlib.dll 内)

public static readonly DateTime MaxValue

例外条件
ArgumentOutOfRangeException

DateTime.MaxValue が、現在のカルチャの既定の暦または指定したカルチャの既定の暦の範囲外です。

この定数の値は、10000 年 1 月 1 日の 00:00:00 よりちょうど 100 ナノ秒タイマー刻み前の 9999 年 12 月 31 日の 23:59:59.9999999 に相当します。

UmAlQuraCalendar などのいくつかの暦は、MaxValue よりも以前のより大きな日付範囲をサポートしています。この場合は、変数の代入時や書式設定および解析の操作で MaxValue にアクセスしようとすると、ArgumentOutOfRangeException がスローされることがあります。DateTime.MaxValue の値を取得する代わりに、指定したカルチャの最後の有効な日付の値を System.Globalization.CultureInfo.DateTimeFormat.Calendar.MaxSupportedDateTime プロパティから取得できます。

タイマー刻みの数を表す Int64 値を DateTime オブジェクトのコンストラクターに渡して、そのオブジェクトをインスタンス化する例を次に示します。この例では、コンストラクターを呼び出す前に、この値が DateTime.MinValue.Ticks 以上であり、DateTime.MaxValue.Ticks 以下であることを確認します。そうでない場合は、ArgumentOutOfRangeException をスローします。


// Attempt to assign an out-of-range value to a DateTime constructor.
long numberOfTicks = Int64.MaxValue;
DateTime validDate;

// Validate the value.
if (numberOfTicks >= DateTime.MinValue.Ticks &&
   numberOfTicks <= DateTime.MaxValue.Ticks)
   validDate = new DateTime(numberOfTicks);
else if (numberOfTicks < DateTime.MinValue.Ticks)
   outputBlock.Text += String.Format("{0:N0} is less than {1:N0} ticks.",
                   numberOfTicks,
                   DateTime.MinValue.Ticks);
else
   outputBlock.Text += String.Format("{0:N0} is greater than {1:N0} ticks.",
                   numberOfTicks,
                   DateTime.MaxValue.Ticks);
// The example displays the following output:
//   9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.      


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示:
© 2014 Microsoft