DateTime.AddSeconds(Double) Yöntem

Tanım

Bu örneğin değerine belirtilen saniye sayısını ekleyen yeni DateTime bir döndürür.

public:
 DateTime AddSeconds(double value);
public DateTime AddSeconds (double value);
member this.AddSeconds : double -> DateTime
Public Function AddSeconds (value As Double) As DateTime

Parametreler

value
Double

Tam ve kesirli saniye sayısı. value Parametre negatif veya pozitif olabilir.

Döndürülenler

Değeri, bu örnekle temsil edilen tarih ve saatin toplamı ve ile temsil edilen valuesaniye sayısı olan bir nesne.

Özel durumlar

DateTime Sonuçta DateTime.MinValue değerinden küçük veya DateTime.MaxValue değerinden büyük olur.

Örnekler

Aşağıdaki örnek, bir değere 30 saniye ve bir DateTime gün içindeki saniye sayısını eklemek için yöntemini kullanırAddSeconds. Ardından her yeni değeri görüntüler ve özgün değerle arasındaki farkı görüntüler. Fark hem zaman aralığı olarak hem de bir dizi değer çizgisi olarak görüntülenir.

using System;

public class Example
{
   public static void Main()
   {
      string dateFormat = "MM/dd/yyyy hh:mm:ss";
      DateTime date1 = new DateTime(2014, 9, 8, 16, 0, 0);
      Console.WriteLine("Original date: {0} ({1:N0} ticks)\n",
                        date1.ToString(dateFormat), date1.Ticks);

      DateTime date2 = date1.AddSeconds(30);
      Console.WriteLine("Second date:   {0} ({1:N0} ticks)",
                        date2.ToString(dateFormat), date2.Ticks);
      Console.WriteLine("Difference between dates: {0} ({1:N0} ticks)\n",
                        date2 - date1, date2.Ticks - date1.Ticks);

      // Add 1 day's worth of seconds (60 secs. * 60 mins * 24 hrs.
      DateTime date3 = date1.AddSeconds(60 * 60 * 24);
      Console.WriteLine("Third date:    {0} ({1:N0} ticks)",
                        date3.ToString(dateFormat), date3.Ticks);
      Console.WriteLine("Difference between dates: {0} ({1:N0} ticks)",
                        date3 - date1, date3.Ticks - date1.Ticks);
   }
}
// The example displays the following output:
//    Original date: 09/08/2014 04:00:00 (635,457,888,000,000,000 ticks)
//
//    Second date:   09/08/2014 04:00:30 (635,457,888,300,000,000 ticks)
//    Difference between dates: 00:00:30 (300,000,000 ticks)
//
//    Third date:    09/09/2014 04:00:00 (635,458,752,000,000,000 ticks)
//    Difference between dates: 1.00:00:00 (864,000,000,000 ticks)
open System

let dateFormat = "MM/dd/yyyy hh:mm:ss"
let date1 = DateTime(2014, 9, 8, 16, 0, 0)
printfn $"Original date: {date1.ToString dateFormat} ({date1.Ticks:N0} ticks)\n"

let date2 = date1.AddSeconds 30
printfn $"Second date:   {date2.ToString dateFormat} ({date2.Ticks:N0} ticks)"
printfn $"Difference between dates: {date2 - date1} ({date2.Ticks - date1.Ticks:N0} ticks)\n"

// Add 1 day's worth of seconds (60 secs. * 60 mins * 24 hrs.
let date3 = date1.AddSeconds(60. * 60. * 24.)
printfn $"Third date:    {date3.ToString dateFormat} ({date3.Ticks:N0} ticks)" 
printfn $"Difference between dates: {date3 - date1} ({date3.Ticks - date1.Ticks:N0} ticks)"

// The example displays the following output:
//    Original date: 09/08/2014 04:00:00 (635,457,888,000,000,000 ticks)
//
//    Second date:   09/08/2014 04:00:30 (635,457,888,300,000,000 ticks)
//    Difference between dates: 00:00:30 (300,000,000 ticks)
//
//    Third date:    09/09/2014 04:00:00 (635,458,752,000,000,000 ticks)
//    Difference between dates: 1.00:00:00 (864,000,000,000 ticks)
Module Example
   Public Sub Main()
      Dim dateFormat As String = "MM/dd/yyyy hh:mm:ss"
      Dim date1 As Date = #09/08/2014 16:00#
      Console.WriteLine("Original date: {0} ({1:N0} ticks)", _
                        date1.ToString(dateFormat), date1.Ticks)
      Console.WriteLine()
      
      Dim date2 As Date = date1.AddSeconds(30)
      Console.WriteLine("Second date:   {0} ({1:N0} ticks)", _
                        date2.ToString(dateFormat), date2.Ticks)
      Console.WriteLine("Difference between dates: {0} ({1:N0} ticks)", _
                        date2 - date1, date2.Ticks - date1.Ticks)                        
      Console.WriteLine()
      
      ' Add 1 day's worth of seconds (60 secs. * 60 mins * 24 hrs.
      Dim date3 As Date = date1.AddSeconds(60 * 60 * 24)
      Console.WriteLine("Third date:    {0} ({1:N0} ticks)", _
                        date3.ToString(dateFormat), date3.Ticks)
      Console.WriteLine("Difference between dates: {0} ({1:N0} ticks)", _
                        date3 - date1, date3.Ticks - date1.Ticks)                        
   End Sub
End Module
' The example displays the following output:
'    Original date: 09/08/2014 04:00:00 (635,457,888,000,000,000 ticks)
'
'    Second date:   09/08/2014 04:00:30 (635,457,888,300,000,000 ticks)
'    Difference between dates: 00:00:30 (300,000,000 ticks)
'
'    Third date:    09/09/2014 04:00:00 (635,458,752,000,000,000 ticks)
'    Difference between dates: 1.00:00:00 (864,000,000,000 ticks)

Açıklamalar

Bu yöntem bu DateTimedeğerini değiştirmez. Bunun yerine, değeri bu işlemin sonucu olan yeni DateTime bir döndürür.

öğesinin value kesirli kısmı, saniyenin kesirli kısmıdır. Örneğin, 4,5 4 saniye, 500 milisaniye ve 0 değer çizgisine eşdeğerdir.

.NET 6 ve önceki sürümlerde value parametresi en yakın milisaniyeye yuvarlanmıştır. .NET 7 ve sonraki sürümlerde parametresinin value tam Double duyarlığı kullanılır. Ancak, kayan nokta matematiğin doğal kararsızlığı nedeniyle elde edilen duyarlık farklılık gösterir.

Şunlara uygulanır

Ayrıca bkz.