このページは役に立ちましたか。
このページのコンテンツについての ご意見をお待ちしております
その他にご意見はありますか。
残り 1500 文字
エクスポート (0) 印刷
すべて展開
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

TimeSpan.FromSeconds メソッド

2013/12/12

指定した秒数を表す TimeSpan を返します。秒数は、ミリ秒単位の精度で指定します。

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

public static TimeSpan FromSeconds(
	double value
)

パラメーター

value
型: System.Double
ミリ秒単位の精度による秒数。

戻り値

型: System.TimeSpan
value を表すオブジェクト。

例外条件
OverflowException

valueMinValue より小さい値か、MaxValue より大きい値です。

または

valueDouble.PositiveInfinity です。

または

valueDouble.NegativeInfinity です。

ArgumentException

valueDouble.NaN が等しい。

value パラメーターはミリ秒に変換されます。そのミリ秒がタイマー刻みに変換され、タイマー刻みの数を使用して新しい TimeSpan が初期化されます。したがって、value は、ミリ秒単位の精度であると見なされます。Double データ型の精度が低下するため、この変換によって、MinValue または MaxValue の付近でもその範囲内にある値に対して OverflowException が生成されます。これが、たとえば TimeSpan オブジェクトをインスタンス化する次の例で OverflowException が発生する原因です。


// The following throws an OverflowException at runtime
TimeSpan maxSpan = TimeSpan.FromSeconds(TimeSpan.MaxValue.TotalSeconds);


FromSeconds メソッドを使用して、複数の TimeSpan オブジェクトを作成するコード例を次に示します。


// Example of the TimeSpan.FromSeconds( double ) method.
using System;

class Example
{
   static void GenTimeSpanFromSeconds(System.Windows.Controls.TextBlock outputBlock, double seconds)
   {
      // Create a TimeSpan object and TimeSpan string from 
      // a number of seconds.
      TimeSpan interval = TimeSpan.FromSeconds(seconds);
      string timeInterval = interval.ToString();

      // Pad the end of the TimeSpan string with spaces if it 
      // does not contain milliseconds.
      int pIndex = timeInterval.IndexOf(':');
      pIndex = timeInterval.IndexOf('.', pIndex);
      if (pIndex < 0) timeInterval += "        ";

      outputBlock.Text += String.Format("{0,21}{1,26}", seconds, timeInterval) + "\n";
   }

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      outputBlock.Text += 
          "This example of TimeSpan.FromSeconds( double )\n" +
          "generates the following output.\n" + "\n";
      outputBlock.Text += "{0,21}{1,18}",
          "FromSeconds", "TimeSpan" + "\n";
      outputBlock.Text += "{0,21}{1,18}",
          "-----------", "--------" + "\n";

      GenTimeSpanFromSeconds(outputBlock, 0.001);
      GenTimeSpanFromSeconds(outputBlock, 0.0015);
      GenTimeSpanFromSeconds(outputBlock, 12.3456);
      GenTimeSpanFromSeconds(outputBlock, 123456.7898);
      GenTimeSpanFromSeconds(outputBlock, 1234567898.7654);
      GenTimeSpanFromSeconds(outputBlock, 1);
      GenTimeSpanFromSeconds(outputBlock, 60);
      GenTimeSpanFromSeconds(outputBlock, 3600);
      GenTimeSpanFromSeconds(outputBlock, 86400);
      GenTimeSpanFromSeconds(outputBlock, 1801220.2);
   }
}

/*
This example of TimeSpan.FromSeconds( double )
generates the following output.

          FromSeconds          TimeSpan
          -----------          --------
                0.001          00:00:00.0010000
               0.0015          00:00:00.0020000
              12.3456          00:00:12.3460000
          123456.7898        1.10:17:36.7900000
      1234567898.7654    14288.23:31:38.7650000
                    1          00:00:01
                   60          00:01:00
                 3600          01:00:00
                86400        1.00:00:00
            1801220.2       20.20:20:20.2000000
*/


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示:
© 2015 Microsoft