DateTime.AddMilliseconds(Double) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen neuen DateTime-Wert zurück, der die angegebene Anzahl von Millisekunden zum Wert dieser Instanz addiert.
public:
DateTime AddMilliseconds(double value);
public DateTime AddMilliseconds (double value);
member this.AddMilliseconds : double -> DateTime
Public Function AddMilliseconds (value As Double) As DateTime
Parameter
- value
- Double
Eine Zahl, die aus ganzen Millisekunden und dem Bruchteil einer Millisekunde besteht. Der value
-Parameter kann negativ oder positiv sein. Beachten Sie, dass dieser Wert auf die nächste Ganzzahl gerundet wird.
Gibt zurück
Ein Objekt, dessen Wert die Summe aus der von dieser Instanz dargestellten Datums- und Uhrzeitangabe und der durch value
dargestellten Anzahl von Millisekunden ist.
Ausnahmen
Das resultierende DateTime ist kleiner als DateTime.MinValue oder größer als DateTime.MaxValue.
Beispiele
Im folgenden Beispiel wird die AddMilliseconds -Methode verwendet, um einem Wert eine DateTime Millisekunde und 1,5 Millisekunden hinzuzufügen. Anschließend wird jeder neue Wert und der Unterschied zwischen dem Wert und dem ursprünglichen Wert angezeigt. Der Unterschied wird sowohl als Zeitspanne als auch als Anzahl von Teilstrichen angezeigt. Im Beispiel wird deutlich, dass eine Millisekunde 10.000 Ticks entspricht. Es zeigt auch, dass Bruchteile von Millisekunden gerundet werden, bevor das Hinzufügen durchgeführt wird. Der Wert, der DateTime sich aus dem Hinzufügen von 1,5 Millisekunden zum ursprünglichen Datum ergibt, ist 2 Millisekunden größer als das ursprüngliche Datum.
string dateFormat = "MM/dd/yyyy hh:mm:ss.fffffff";
DateTime date1 = new DateTime(2010, 9, 8, 16, 0, 0);
Console.WriteLine("Original date: {0} ({1:N0} ticks)\n",
date1.ToString(dateFormat), date1.Ticks);
DateTime date2 = date1.AddMilliseconds(1);
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);
DateTime date3 = date1.AddMilliseconds(1.5);
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/2010 04:00:00.0000000 (634,195,584,000,000,000 ticks)
//
// Second date: 09/08/2010 04:00:00.0010000 (634,195,584,000,010,000 ticks)
// Difference between dates: 00:00:00.0010000 (10,000 ticks)
//
// Third date: 09/08/2010 04:00:00.0020000 (634,195,584,000,020,000 ticks)
// Difference between dates: 00:00:00.0020000 (20,000 ticks)
let dateFormat = "MM/dd/yyyy hh:mm:ss.fffffff"
let date1 = DateTime(2010, 9, 8, 16, 0, 0)
printfn $"Original date: {date1.ToString dateFormat} ({date1.Ticks:N0} ticks)\n"
let date2 = date1.AddMilliseconds 1
printfn $"Second date: {date2.ToString dateFormat} ({date2.Ticks:N0} ticks)"
printfn $"Difference between dates: {date2 - date1} ({date2.Ticks - date1.Ticks:N0} ticks)\n"
let date3 = date1.AddMilliseconds 1.5
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/2010 04:00:00.0000000 (634,195,584,000,000,000 ticks)
//
// Second date: 09/08/2010 04:00:00.0010000 (634,195,584,000,010,000 ticks)
// Difference between dates: 00:00:00.0010000 (10,000 ticks)
//
// Third date: 09/08/2010 04:00:00.0020000 (634,195,584,000,020,000 ticks)
// Difference between dates: 00:00:00.0020000 (20,000 ticks)
Dim dateFormat As String = "MM/dd/yyyy hh:mm:ss.fffffff"
Dim date1 As Date = #09/08/2010 16:00#
Console.WriteLine("Original date: {0} ({1:N0} ticks)", _
date1.ToString(dateFormat), date1.Ticks)
Console.WriteLine()
Dim date2 As Date = date1.AddMilliseconds(1)
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()
Dim date3 As Date = date1.AddMilliseconds(1.5)
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/2010 04:00:00.0000000 (634,195,584,000,000,000 ticks)
'
' Second date: 09/08/2010 04:00:00.0010000 (634,195,584,000,010,000 ticks)
' Difference between dates: 00:00:00.0010000 (10,000 ticks)
'
' Third date: 09/08/2010 04:00:00.0020000 (634,195,584,000,020,000 ticks)
' Difference between dates: 00:00:00.0020000 (20,000 ticks)
Hinweise
Diese Methode ändert nicht den Wert dieses DateTime. Stattdessen wird ein neues DateTime zurückgegeben, dessen Wert das Ergebnis dieses Vorgangs ist.
Der Bruchteil von value
ist der Bruchteil eines Millisekundenteils. Beispielsweise entspricht 4,5 4 Millisekunden und 5000 Ticks, wobei eine Millisekunde = 10000 Ticks ist.
In .NET 6 und früheren Versionen wird der value
Parameter auf die nächste Millisekunde gerundet. In .NET 7 und höheren Versionen wird die vollständige Double Genauigkeit des value
Parameters verwendet. Aufgrund der inhärenten Ungenauigkeit der Gleitkommaberechnung variiert die resultierende Genauigkeit jedoch.