10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

Noda Time 1.2 发布,支持 XML、JSON 序列化和文本格式化

  • 2013-11-29
  • 本文字数:1073 字

    阅读完需:约 4 分钟

Noda Time 1.2 已经发布,除了提供一个用于处理 JSON 序列化的可选程序集外,还支持 XML、二进制序列化和文本格式化。它还提供了对类型Duration、OffsetDateTime 和ZonedDateTime 进行格式化和解析的能力,并包含方法Interval.Contains() 和ZonedDateTime.Calendar(),此外,还修复了若干Bug。

最新版本提供了对程序集NodaTime.Serialization.JsonNet 的支持。该程序集使用Json.NET 4.5.11 构建,同时适用于便携式和桌面平台。此外,它还在JsonSerializer 和JsonSerializerSettings 上提供了一个扩展的ConfigureForNodaTime 方法。类型NodaConverters 为每个转换器提供了公共的静态只读字段,所有这些转换器都是不可变的。或者,开发人员可以基于使用NodaPatternConverter 的模式创建自定义转换器。

Noda Time 1.2 更改了若干 API,如引入新类 DurationPattern、OffsetDateTimePattern 和 ZonedDateTimePattern。这些类分别表示解析和格式化 Duration、OffsetDateTime 和 ZonedDateTime 的模式。它还引入了新属性 GeneralsoPattern、BclRoundtripPattern 和 FullRoundtripPattern。这些属性提供对模式 o/O、r 和 s 的编程访问。该版本还包含 DateTimeZoneNotFoundException、CalendarSystem 和 InvalidNodaDataException。

在 Noda Time 1.2 中,类型 Instant、OffsetDateTime、ZonedDateTime、LocalDateTime, LocalDate、LocalTime、Offset、Interval、Duration 和 PeriodBuilder 均实现了 IXmlSerializable 接口,开发人员可以对它们进行序列化。此外,这些类型也实现了 ISerializable 接口,开发人员可以使用 BinaryFormatter 通过 [Serializable] 属性对它们进行序列化。

最新版本除了包含新的 Era.AnnoMartyrum 外,还包含 InstantPattern.WithMinMaxLabels(),前者用来取代先前命名错误的 AnnoMartyrm,后者提供了替换用于格式化最小和最大时刻的文本的能力。除了 ParseResult.Exception 外,它还增加了方法 Interval.Contains()、ZonedDateTime.Calendar 和 ZonedDateTime.GetZoneInterval()。其中,ParseResult.Exception 提供对 GetValueOrThrow() 方法可能抛出的异常的直接访问。

在先前的版本中,创建超出 long.MaxValue 值的 Period 时会发生不正确溢出。除了修复该 Bug 外,Noda Time 1.2 还修复了另一个 Bug。当使用月末和接近闰年的值调用 Period.Between() 时,后者会导致这个方法返回一个正数和负数混合的结果。对于现有的 Instant 模式 n、g 和 d,该版本还取消了对它们的大写别名的支持。

查看英文原文:**** Noda Time 1.2 Released with XML, JSON Serialization and Text Formatting

2013-11-29 11:041698
用户头像

发布了 256 篇内容, 共 97.2 次阅读, 收获喜欢 12 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第九周学习总结

文智

极客大学架构师训练营

架构师训练营第 5 周学习总结

菜青虫

极客大学架构师训练营

c语言只是总结大全,干货收藏

C语言与CPP编程

面试 编程语言 C语言

架构师训练营第 1 期 -- 第九周作业

发酵的死神

极客大学架构师训练营

架构师训练营第九周作业

邓昀垚

极客大学架构师训练营

架构2期第5周作业

supersky6

架构一期 第九周作业

haha

极客大学架构师训练营

「架构师训练营」第 5 周作业

小黄鱼

极客大学架构师训练营

第五周笔记

willson

极客大学架构师训练营

架构师训练营第九周作业

Shunyi

极客大学架构师训练营

第九周总结

solike

架构师训练营第九周学习笔记

郎哲

极客大学架构师训练营

第九周作业

wanlinwang

极客大学架构师训练营

架构 2 期 - 第五周作业(1)

浮生一梦

极客大学架构师训练营 第五周 2组

架构师训练营 - 第九周 - 作业一

行者

架构师训练营第九周总结

邓昀垚

极客大学架构师训练营

架构师训练营week09

FG佳

极客大学架构师训练营

架构师训练营week09总结

FG佳

极客大学架构师训练营

架构师训练营 2 期 - 第五周总结

Geek_no_one

极客大学架构师训练营

java实现一致性 hash 算法

Mars

一致性Hash算法

第九周总结

Geek_ac4080

第 5 周作业

Steven

极客大学架构师训练营

「架构师训练营第 1 期」第九周作业

张国荣

第 5 周 系统架构总结

心在那片海

第 5 周 系统架构作业

心在那片海

架构师训练营作业

郎哲

极客大学架构师训练营

性能优化(三)

wing

极客大学架构师训练营

架构师训练营 - 第 9 周课后作业(1 期)

阿甘

架构师训练营第九周作业

月殇

极客大学架构师训练营

第五周总结

Griffenliu

顺序查找

ilovealt

算法和数据结构

Noda Time 1.2发布,支持XML、JSON序列化和文本格式化_语言 & 开发_Anand Narayanaswamy_InfoQ精选文章