DeserializeISO8601DatetimeStringtoC#DateTime我正在尝试使用:JsonConvert.DeserializeObject("2009-02-15T00:00:00Z",newIsoDateTimeConverter())但它给了我一个FormatException:Inputstringwasnotinacorrectformat。我究竟做错了什么?如果要解析单个值,最简单的方法可能就是使用DateTime.ParseExact:DateTimevalue=DateTime.ParseExact(text,"o",null);“o”模式是往返模式,设计为ISO-8601:“O”或“o”标准格式说明符对应“yyyy”-“MM”-“dd'T'HH”:“mm”:“嘘”。"fffffffK"自定义格式字符串用于DateTime值和"yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffzzz'用于DateTimeOffset值。我没有指定格式provider因为它无关紧要:这个说明符的模式反映了一个定义的标准(ISO8601)。所以无论使用什么文化或提供格式提供者,它总是相同的。如果你需要Json.NET来透明地处理这个当反序列化其他值时,这可能是一个更棘手的提议-其他人可能知道更多。此外,就像一个插件,你可能想考虑使用我的NodaTime项目,它支持ISO-8601并与JSON.NET集成-虽然还没有以预先打包的方式。以上就是C#学习教程:将ISO8601日期时间字符串反序列化为C#DateTime。如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文来自网络合集,不代表立场,如涉及侵权,请点击有权联系管理员删除。如需转载请注明出处:
