c# – 使用NodaTime解析输入并输出不同的dateTime格式
作者:互联网
我目前正在使用NodaTime来解析日期和输出日期
public static string nodaTimeTest6(string input)
{
var defaultValue = new OffsetDateTime(new LocalDateTime(2000, 1, 1, 0, 0), Offset.Zero);
var pattern = OffsetDateTimePattern.Create("yyyy-MM-dd'T'HH:mm:sso<m>", CultureInfo.InvariantCulture, defaultValue);
var result = pattern.Parse(input);
return result.Value.Month + "/" + result.Value.Day + "/" + result.Value.Year + " " + result.Value.ClockHourOfHalfDay;
}
例如,输入是:2014-03-11T02:00:00-07:00
如果我的return语句如下:return result.Value.ToString(),那么输出将如下所示:2014-03-11T02:00:00-07
我理解使用NodaTime属性(这是一个救生员),但是,我对这样的输出感兴趣:
yyyy-MM-dd HH:mm:ss
yyyyMMdd HH:mm:ss
dd / MM / yyyy hh:mm
所以我试着把我的return语句更改为:
return result.Value.Month“/”result.Value.Day“/”result.Value.Year“”result.Value.Hour“:”result.Value.Minute;
该格式的最终输出是:3/11/2014 2:0
无论如何要制作输出,所以它是一个固定的格式,如03/11/2014 02:00
我知道如果我输入01作为我的月份,输出将是2014年1月11日而不是01/11/2014
解决方法:
您可以将格式发送到ToString方法:
return result.Value.ToString("dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture);
标签:c,datetime,nodatime 来源: https://codeday.me/bug/20190612/1226027.html