.NET日期添加天数

Pit*_*ger 2 .net c# vb.net datetime datetime-format

我有这种格式的日期"1999-05-31T13:20:00.000-05:00"我想为它添加几个小时或几天.有人可以建议如何使用这种格式和AddDays或AddHours吗?结果需要返回相同的格式.

Ale*_*Aza 9

尝试使用DateTimeOffset.Parse.然后使用AddDaysAddHours.

如果要保留解析的相同时区偏移量,请务必使用DateTimeOffset而不是DateTime.

var dateTimeOffset = DateTimeOffset.Parse("1999-05-31T13:20:00.000-05:00");
var newDateTimeOffset = dateTimeOffset.AddHours(1);
var newDateTimeString = newDateTimeOffset.ToString("O");
Run Code Online (Sandbox Code Playgroud)

如果您不喜欢"O"格式,可以使用:

var newDateTimeString = newDateTimeOffset.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffK")
Run Code Online (Sandbox Code Playgroud)

这将与您的格式100%匹配.