TimeSpan.Subtract(TimeSpan) Método

Definición

Devuelve un nuevo objeto TimeSpan cuyo valor es la diferencia entre el objeto TimeSpan especificado y esta instancia.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

Parámetros

ts
TimeSpan

Intervalo de tiempo que se va a restar.The time interval to be subtracted.

Devoluciones

Nuevo intervalo de tiempo cuyo valor es el resultado de restar el valor de esta instancia menos el valor de ts.A new time interval whose value is the result of the value of this instance minus the value of ts.

Excepciones

El valor devuelto es menor que MinValue o mayor que MaxValue.The return value is less than MinValue or greater than MaxValue.

Ejemplos

En el ejemplo siguiente se Subtract usa el método para calcular la diferencia entre TimeSpan un solo valor y cada uno de los intervalos de tiempo de una matriz.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. Tenga en cuenta que TimeSpan , dado que las cadenas de formato no incluyen signos negativos en la cadena de resultado, el ejemplo usa lógica condicional para incluir un signo negativo con intervalos de tiempo negativos.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

Comentarios

El valor devuelto debe estar TimeSpan.MinValue entre TimeSpan.MaxValuey; de lo contrario, se produce una excepción.The return value must be between TimeSpan.MinValue and TimeSpan.MaxValue; otherwise, an exception is thrown.

El valor devuelto es un TimeSpannuevo; el TimeSpan original no se modifica.The return value is a new TimeSpan; the original TimeSpan is not modified.

Se aplica a

Consulte también: