DateTime.AddSeconds(Double) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vrátí novou DateTime hodnotu, která k hodnotě této instance přidá zadaný počet sekund.
public:
DateTime AddSeconds(double value);
public DateTime AddSeconds(double value);
member this.AddSeconds : double -> DateTime
Public Function AddSeconds (value As Double) As DateTime
Parametry
- value
- Double
Počet celých a desetinných sekund. Parametr value může být záporný nebo kladný.
Návraty
Objekt, jehož hodnota je součet data a času reprezentovaný touto instancí a počtem sekund reprezentovaných value.
Výjimky
Výsledek DateTime je menší než DateTime.MinValue nebo větší než DateTime.MaxValue.
Příklady
Následující příklad používá metodu AddSeconds k přidání 30 sekund a počtu sekund v jednom dni k hodnotě DateTime . Pak zobrazí každou novou hodnotu a zobrazí rozdíl mezi ní a původní hodnotou. Rozdíl se zobrazuje jak jako časové rozpětí, tak jako počet záškrtů.
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)
Poznámky
Tato metoda nemění hodnotu tohoto DateTime. Místo toho vrátí novou DateTime hodnotu, jejíž hodnota je výsledkem této operace.
Zlomková část value je zlomková část sekundy. Například 4,5 odpovídá 4 sekundám, 500 milisekundám a 0 tisekundám.
V rozhraní .NET Framework value se parametr zaokrouhlí na nejbližší milisekundu. V .NET 7 a novějších verzích se používá úplná Double přesnost parametru value . Vzhledem k nepřesnosti matematiky s plovoucí desetinnou čárkou se ale výsledná přesnost bude lišit.