DateTime.AddMonths(Int32) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve um novo DateTime que adiciona o número de meses especificado ao valor desta instância.
public:
DateTime AddMonths(int months);
public DateTime AddMonths(int months);
member this.AddMonths : int -> DateTime
Public Function AddMonths (months As Integer) As DateTime
Parâmetros
- months
- Int32
Vários meses. O months parâmetro pode ser negativo ou positivo.
Devoluções
Um objeto cujo valor é a soma da data e hora representadas por esta instância e months.
Exceções
O resultado DateTime é inferior a DateTime.MinValue ou superior a DateTime.MaxValue.
-ou-
months é inferior a -120.000 ou superior a 120.000.
Exemplos
O exemplo seguinte acrescenta entre zero e quinze meses ao último dia de dezembro de 2015. Neste caso, o método AddMonths devolve a data do último dia de cada mês e gere com sucesso os anos bissextos.
using System;
public class Example
{
public static void Main()
{
var dat = new DateTime(2015, 12, 31);
for (int ctr = 0; ctr <= 15; ctr++)
Console.WriteLine(dat.AddMonths(ctr).ToString("d"));
}
}
// The example displays the following output:
// 12/31/2015
// 1/31/2016
// 2/29/2016
// 3/31/2016
// 4/30/2016
// 5/31/2016
// 6/30/2016
// 7/31/2016
// 8/31/2016
// 9/30/2016
// 10/31/2016
// 11/30/2016
// 12/31/2016
// 1/31/2017
// 2/28/2017
// 3/31/2017
open System
let dat = DateTime(2015, 12, 31)
for i = 0 to 15 do
printfn $"{dat.AddMonths i:d}"
// The example displays the following output:
// 12/31/2015
// 1/31/2016
// 2/29/2016
// 3/31/2016
// 4/30/2016
// 5/31/2016
// 6/30/2016
// 7/31/2016
// 8/31/2016
// 9/30/2016
// 10/31/2016
// 11/30/2016
// 12/31/2016
// 1/31/2017
// 2/28/2017
// 3/31/2017
Module Example
Public Sub Main()
Dim dat As Date = #12/31/2015#
For ctr As Integer = 0 To 15
Console.WriteLine(dat.AddMonths(ctr).ToString("d"))
Next
End Sub
End Module
' The example displays the following output:
' 12/31/2015
' 1/31/2016
' 2/29/2016
' 3/31/2016
' 4/30/2016
' 5/31/2016
' 6/30/2016
' 7/31/2016
' 8/31/2016
' 9/30/2016
' 10/31/2016
' 11/30/2016
' 12/31/2016
' 1/31/2017
' 2/28/2017
' 3/31/2017
Observações
Este método não altera o valor deste DateTime objeto. Em vez disso, devolve um novo DateTime objeto cujo valor é o resultado desta operação.
O AddMonths método calcula o mês e o ano resultantes, tendo em conta os anos bissextos e o número de dias num mês, ajustando depois a parte do dia do objeto resultante DateTime . Se o dia resultante não for válido no mês resultante, utiliza-se o último dia válido do mês resultante. Por exemplo, 31 de março + 1 mês = 30 de abril, e 31 de março - 1 mês = 28 de fevereiro para um ano bissexto e 29 de fevereiro para um ano bissexto.
A parte do momento do dia do objeto resultante DateTime mantém-se igual à desta ocorrência.