写点什么

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:041816
用户头像

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

关注

评论

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

安全之路其修远兮,吾将上下而求索

Thrash

架构实战营 模块一 作业

Pitt

apk优化,Android高级工程师必看系列,在线面试指南

欢喜学安卓

android 程序员 面试 移动开发

Flink集成Iceberg在同程艺龙的实践

Apache Flink

flink

架构实战营课程1作业

求索

学习 架构实战营

【粉丝需求】如何把一个前端网页都搞下来?

孙叫兽

大前端

阿里的 RocketMQ 如何让双十一峰值之下 0 故障?

阿里巴巴云原生

容器 运维 云原生 k8s 消息中间件

金三银四旗开得胜!春招字节正式批4面,顺利拿到offer

Java 编程 程序员 架构 面试

模块1作业

王硕

架构实战营

Fluid — 云原生环境下的高效“数据物流系统”

阿里巴巴云原生

人工智能 云计算 容器 云原生 存储

模块一课后作业

追随哆咪

架构实战营

业务架构:微信与学生管理系统

我不是坏人

架构实战营 模块一 课后作业

Lingjun

架构实战营

微信业务架构

Fleng

架构实战营

七进七出,终获阿里32k*16offer,这就是我悲惨的面试经历~

Java架构师迁哥

Knative 基于流量的灰度发布和自动弹性实践

阿里巴巴云原生

Serverless 容器 开发者 云原生 k8s

给视频添加雪花飘落特效

老猿Python

OpenCV 音视频 图形图像处理 视频特效 引航计划

常用正则表达式整理【总结】

孙叫兽

正则表达式 大前端 正则

有哪些可以提高代码质量的书籍推荐?

JavaGuide

Java 架构 计算机基础 重构 代码质量

聪明人的训练(六)

Changing Lin

4月日更

双非本化学跨专业,投岗阿里/滴滴后端三面,最终拿下offer

Java 编程 程序员 架构 面试

Python系列:初遇python

Bob

Python 编程 4月日更

翻译:《实用的Python编程》02_00_Overview

codists

Python

史上最全的Java面试题库宝典,Github上标星200k,太香了!

Java架构之路

Java 程序员 架构 面试 编程语言

图解云原生应用设计模式

倪朋飞

Kubernetes 云原生

架构实战营模块1作业

半夏

学习 架构实战营

架构实战营 模块一作业

Dylan

架构实战营

换工作需要做哪些准备

zhou

职业规划

阿里巴巴开源容器镜像加速技术

阿里巴巴云原生

Serverless 容器 云原生 k8s 存储

如何让使命、愿景、价值观落地

石云升

价值观 使命 愿景 28天写作 4月日更

微信业务架构图

@oo?金樱子

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