通过


DateAndTime.DateAdd 方法

定义

返回一个 Date 值,该值包含已向其添加指定时间间隔的日期和时间值。

重载

名称 说明
DateAdd(DateInterval, Double, DateTime)

返回一个值,该值包含已向其添加指定时间间隔的日期和时间值。

DateAdd(String, Double, Object)

返回一个值,该值包含已向其添加指定时间间隔的日期和时间值。

DateAdd(DateInterval, Double, DateTime)

Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb

返回一个值,该值包含已向其添加指定时间间隔的日期和时间值。

public:
 static DateTime DateAdd(Microsoft::VisualBasic::DateInterval Interval, double Number, DateTime DateValue);
public static DateTime DateAdd(Microsoft.VisualBasic.DateInterval Interval, double Number, DateTime DateValue);
static member DateAdd : Microsoft.VisualBasic.DateInterval * double * DateTime -> DateTime
Public Function DateAdd (Interval As DateInterval, Number As Double, DateValue As DateTime) As DateTime

参数

Interval
DateInterval

必填。 枚举 DateInterval 值或表示要添加的时间间隔的字符串表达式。

Number
Double

必填。 表示要添加的间隔数的浮点表达式。 它可以是正的(获取将来的日期/时间值)或负值(获取过去日期/时间值)。 当指定小时、分钟或秒时 Interval ,它可以包含小数部分。 对于其他值 Interval,将忽略任何小数部分 Number

DateValue
DateTime

必填。 一个表达式,表示要向其添加间隔的日期和时间。 DateValue 调用程序中本身不会更改。

返回

一个值,该值包含已向其添加指定时间间隔的日期和时间值。

例外

DateValue 是不能强制的 Date

Interval 无效。

计算日期在 1 年 1 月 1 日的 00:00:00 之前,或晚于 9999 年 12 月 31 日 23:59:59。

示例

此示例采用一个日期,并且使用该 DateAdd 函数,在将来显示指定月数的相应日期。

Dim dateEntered As String =
InputBox("Enter a date", DefaultResponse:=Date.Now.ToShortDateString)
Dim monthsEntered As String =
InputBox("Enter number of months to add", DefaultResponse:="12")

Dim dateValue As Date = Date.Parse(dateEntered)
Dim monthsValue As Integer = Integer.Parse(monthsEntered)

' Add the months to the date.
Dim newDate As Date = DateAdd(DateInterval.Month, monthsValue, dateValue)

' This statement has a string interval argument, and
' is equivalent to the above statement.
'Dim newDate As Date = DateAdd("m", monthsValue, dateValue)

MessageBox.Show("New date: " & newDate.ToShortDateString)

注解

可以使用函数 DateAdd 从日期添加或减去指定的时间间隔。 例如,可以计算日期 30 天(从今天开始)或 45 分钟之前的时间。

若要添加DateValue天数,可以使用DateInterval.DayDateInterval.DayOfYearDateInterval.Weekday。 这些被视为等效的,因为 DayOfYear 不是 Weekday 有意义的时间间隔。

DateAdd 函数永远不会返回无效的日期。 如有必要,生成的日期的日期部分将向下调整为结果年份中生成的月份的最后一天。 以下示例向 1 月 31 日添加一个月:

Dim NextMonth As Date = DateAdd(DateInterval.Month, 1, #1/31/1995#)

在此示例中, DateAdd 返回 #2/28/1995#,而不是 #2/31/1995##1/31/1996#如果是DateValue,它返回#2/29/1996#是因为1996年是一个跃年。

注释

DateAdd使用命名空间中类的属性CultureInfo中的System.Globalization当前日历设置CurrentCulture。 默认值 CurrentCulture控制面板 设置确定。

由于结构支持DateTime每个Date值,因此其方法提供了添加时间间隔的其他选项。 例如,可以将小数天(舍入到最接近毫秒)添加到 Date 变量,如下所示:

Dim NextTime As Date = Now        ' Current date and time.
NextTime = NextTime.AddDays(3.4)  ' Increment by 3 2/5 days.

Interval 参数可以具有以下设置之一。

枚举值 String 要添加的时间间隔单位
DateInterval.Day d 一天;截断为整型值
DateInterval.DayOfYear y 一天;截断为整型值
DateInterval.Hour h 小时;舍入为最接近毫秒
DateInterval.Minute n 分钟;舍入为最接近毫秒
DateInterval.Month m 月;截断为整型值
DateInterval.Quarter q 季度;截断为整型值
DateInterval.Second s 第二;舍入为最接近毫秒
DateInterval.Weekday w 一天;截断为整型值
DateInterval.WeekOfYear ww 周;截断为整型值
DateInterval.Year yyyy 年;截断为整型值

另请参阅

适用于

DateAdd(String, Double, Object)

Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb
Source:
DateAndTime.vb

返回一个值,该值包含已向其添加指定时间间隔的日期和时间值。

public:
 static DateTime DateAdd(System::String ^ Interval, double Number, System::Object ^ DateValue);
public static DateTime DateAdd(string Interval, double Number, object? DateValue);
public static DateTime DateAdd(string Interval, double Number, object DateValue);
static member DateAdd : string * double * obj -> DateTime
Public Function DateAdd (Interval As String, Number As Double, DateValue As Object) As DateTime

参数

Interval
String

必填。 枚举 DateInterval 值或表示要添加的时间间隔的字符串表达式。

Number
Double

必填。 表示要添加的间隔数的浮点表达式。 Number 可以是正值(若要获取将来的日期/时间值)或负值(若要获取过去日期/时间值)。 当指定小时、分钟或秒时 Interval ,它可以包含小数部分。 对于其他值 Interval,将忽略任何小数部分 Number

DateValue
Object

必填。 一个表达式,表示要向其添加间隔的日期和时间。 DateValue 调用程序中本身不会更改。

返回

一个值,该值包含已向其添加指定时间间隔的日期和时间值。

例外

DateValue 是不能强制的 Date

Interval 无效。

计算日期在 1 年 1 月 1 日的 00:00:00 之前,或晚于 9999 年 12 月 31 日 23:59:59。

示例

此示例采用一个日期,并且使用该 DateAdd 函数,在将来显示指定月数的相应日期。

Dim dateEntered As String =
InputBox("Enter a date", DefaultResponse:=Date.Now.ToShortDateString)
Dim monthsEntered As String =
InputBox("Enter number of months to add", DefaultResponse:="12")

Dim dateValue As Date = Date.Parse(dateEntered)
Dim monthsValue As Integer = Integer.Parse(monthsEntered)

' Add the months to the date.
Dim newDate As Date = DateAdd(DateInterval.Month, monthsValue, dateValue)

' This statement has a string interval argument, and
' is equivalent to the above statement.
'Dim newDate As Date = DateAdd("m", monthsValue, dateValue)

MessageBox.Show("New date: " & newDate.ToShortDateString)

注解

可以使用函数 DateAdd 从日期添加或减去指定的时间间隔。 例如,可以计算日期 30 天(从今天开始)或 45 分钟之前的时间。

若要添加DateValue天数,可以使用DateInterval.DayDateInterval.DayOfYearDateInterval.Weekday。 这些被视为等效的,因为 DayOfYear 不是 Weekday 有意义的时间间隔。

DateAdd 函数永远不会返回无效的日期。 如有必要,生成的日期的日期部分将向下调整为结果年份中生成的月份的最后一天。 以下示例向 1 月 31 日添加一个月:

Dim NextMonth As Date = DateAdd(DateInterval.Month, 1, #1/31/1995#)

在此示例中, DateAdd 返回 #2/28/1995#,而不是 #2/31/1995##1/31/1996#如果是DateValue,它返回#2/29/1996#是因为1996年是一个跃年。

注释

DateAdd使用命名空间中类的属性CultureInfo中的System.Globalization当前日历设置CurrentCulture。 默认值 CurrentCulture控制面板 设置确定。

由于结构支持DateTime每个Date值,因此其方法提供了添加时间间隔的其他选项。 例如,可以将小数天(舍入到最接近毫秒)添加到 Date 变量,如下所示:

Dim NextTime As Date = Now        ' Current date and time.
NextTime = NextTime.AddDays(3.4)  ' Increment by 3 2/5 days.

Interval 参数可以具有以下设置之一。

枚举值 String 要添加的时间间隔单位
DateInterval.Day d 一天;截断为整型值
DateInterval.DayOfYear y 一天;截断为整型值
DateInterval.Hour h 小时;舍入为最接近毫秒
DateInterval.Minute n 分钟;舍入为最接近毫秒
DateInterval.Month m 月;截断为整型值
DateInterval.Quarter q 季度;截断为整型值
DateInterval.Second s 第二;舍入为最接近毫秒
DateInterval.Weekday w 一天;截断为整型值
DateInterval.WeekOfYear ww 周;截断为整型值
DateInterval.Year yyyy 年;截断为整型值

另请参阅

适用于