TimeSpan.Subtract(TimeSpan) TimeSpan.Subtract(TimeSpan) TimeSpan.Subtract(TimeSpan) TimeSpan.Subtract(TimeSpan) Method

Definizione

Restituisce un nuovo oggetto TimeSpan il cui valore è la differenza tra l'oggetto TimeSpan specificato e questa istanza.Returns a new TimeSpan object whose value is the difference between the specified TimeSpan object and this instance.

public:
 TimeSpan Subtract(TimeSpan ts);
public TimeSpan Subtract (TimeSpan ts);
member this.Subtract : TimeSpan -> TimeSpan
Public Function Subtract (ts As TimeSpan) As TimeSpan

Parametri

ts
TimeSpan TimeSpan TimeSpan TimeSpan

Intervallo di tempo da sottrarre.The time interval to be subtracted.

Restituisce

Nuovo intervallo di tempo il cui valore è il risultato del valore di questa istanza meno il valore di ts.A new time interval whose value is the result of the value of this instance minus the value of ts.

Eccezioni

Il valore restituito è minore di MinValue o maggiore di MaxValue.The return value is less than MinValue or greater than MaxValue.

Esempi

Nell'esempio seguente viene usato Subtract il metodo per calcolare la differenza tra un TimeSpan singolo valore e ogni intervallo di tempo in una matrice.The following example uses the Subtract method to calculate the difference between a single TimeSpan value and each of the time intervals in an array. Si noti che, TimeSpan poiché le stringhe di formato non includono segni negativi nella stringa di risultato, nell'esempio viene utilizzata la logica condizionale per includere un segno negativo con intervalli di tempo negativi.Note that, because TimeSpan format strings do not include negative signs in the result string, the example uses conditional logic to include a negative sign with negative time intervals.

TimeSpan baseTimeSpan = new TimeSpan(1, 12, 15, 16);

// Create an array of timespan intervals.
TimeSpan[] intervals = { 
   TimeSpan.FromDays(1.5), 
   TimeSpan.FromHours(1.5), 
   TimeSpan.FromMinutes(45), 
   TimeSpan.FromMilliseconds(505),
   new TimeSpan(1, 17, 32, 20), 
   new TimeSpan(-8, 30, 0) 
};

// Calculate a new time interval by adding each element to the base interval.
foreach (var interval in intervals)
   Console.WriteLine(@"{0,-10:g} - {3}{1,15:%d\:hh\:mm\:ss\.ffff} = {4}{2:%d\:hh\:mm\:ss\.ffff}",
                     baseTimeSpan, interval, baseTimeSpan.Subtract(interval),
                     interval < TimeSpan.Zero ? "-" : "",
                     baseTimeSpan < interval.Duration() ? "-" : "");

// The example displays the following output:
//       1:12:15:16 - 1:12:00:00.0000 = 0:00:15:16.0000
//       1:12:15:16 - 0:01:30:00.0000 = 1:10:45:16.0000
//       1:12:15:16 - 0:00:45:00.0000 = 1:11:30:16.0000
//       1:12:15:16 - 0:00:00:00.5050 = 1:12:15:15.4950
//       1:12:15:16 - 1:17:32:20.0000 = -0:05:17:04.0000
//       1:12:15:16 - -0:07:30:00.0000 = 1:19:45:16.0000

Commenti

Il valore restituito deve essere compreso TimeSpan.MinValue tra TimeSpan.MaxValuee; in caso contrario, viene generata un'eccezione.The return value must be between TimeSpan.MinValue and TimeSpan.MaxValue; otherwise, an exception is thrown.

Il valore restituito è un nuovo TimeSpanoggetto; l' TimeSpan originale non viene modificato.The return value is a new TimeSpan; the original TimeSpan is not modified.

Si applica a

Vedi anche