小编Art*_* L.的帖子

使用NodaTime,如何在当前文化中格式化ZonedDateTime

我有一个ZonedDateTime,我希望显示它,以便在工作站上配置短日期和短时间格式化日期时间,然后是偏移量(类似于... 05/01/2005 02:30 PM -05:00 ).我希望这样的东西能起作用......

var patternDateTimeOffset = 
   ZonedDateTimePattern.CreateWithCurrentCulture("g o<m>", DateTimeZoneProviders.Tzdb);
lblOriginalDateTimeAndOffsetVal.Text = patternDateTimeOffset.Format(zonedDateTime);
Run Code Online (Sandbox Code Playgroud)

但是,看起来ZonedDateTimePattern中不支持"g",就像它在LocalDateTimePattern中一样.上面的代码抛出NodaTime.Text.InvalidPatternException.

我可以用"MM/dd/yyyy hh:mm"替换"g",但之后它没有使用当前的文化.

我可以使用LocalDateTimePattern作为日期时间,然后使用ZonedDateTimePattern连接偏移量.这有效,但看起来很难看.

这似乎很常见.我是NodaTime的新手,所以我肯定我错过了一些东西.我正在使用NodaTime 1.3.1并以.net 4.0为目标.任何帮助表示赞赏.

c# datetime nodatime

5
推荐指数
1
解决办法
680
查看次数

标签 统计

c# ×1

datetime ×1

nodatime ×1