写点什么

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

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

关注

评论

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

量化策略交易软件开发|量化策略交易系统APP开发

系统开发

中美上市软件公司对比中的投资启示

ToB行业头条

OpenYurt v0.3.0 重磅发布:全面提升边缘场景下应用部署效率

阿里巴巴云原生

阿里巴巴 开源 容器 云原生 k8s

百度智能小程序打造购票观影一站式体验,影视宣发新玩法助力行业复苏

DT极客

Serverless 架构到底要不要服务器?

Serverless Devs

Java 云计算 Serverless 运维 云原生

百度研究院的追星逐浪,中国科技的奋发自强

脑极体

量化交易系统开发

威掂l8929545452

区块链 系统开发 量化交易系统 交易所

Redis 学习笔记 03:字典

架构精进之路

redis 七日更 28天写作

Linux网络之 从 C10K 到 DPDK

赖猫

c++ Linux linux编程 C10K DPDK

流行的后台管理系统模板总结

老魚

程序员 建站 web全栈

Java Optimizing 读书笔记(一)

绝影-大数据

Linux I/O 原理和 Zero-copy 技术全面揭秘

赖猫

c++ Linux linux编程 服务器开发 I/O

区块链轻节点:“身”轻,责任重

华为云开发者联盟

区块链 数据 数据隐私 轻节点

即构微信小程序直播组件是什么?有哪些功能?哪些小程序类目可以使用?

ZEGO即构

如何利用策略模式避免冗长的if-else/switch分支判断代码?

李尚智

Java 学习 设计模式

在函数计算中到底该不该使用 VPC?

donghui

Serverless

高并发架构---TCP

赖猫

TCP 后端 高并发 TCP/IP 服务器开发

BI项目失败?看看是不是缺少了这几项闭环!

博文视点Broadview

数据库表数据量大读写缓慢如何优化(2)「查询分离」

我爱娃哈哈😍

数据库 大数据 架构 后端 优化

红牛交易所app系统开发

威掂l8929545452

区块链 系统开发 APP开发 红牛交易所

开发更便捷 阿里云推出一站式应用研发平台EMAS 2.0

移动研发平台EMAS

阿里云 Serverless AI 低代码 移动研发平台

现货合约量化交易系统开发搭建

薇電13242772558

数字货币 策略模式

开发老人笔记:Git 常用命令清单

华为云开发者联盟

git 代码 bug

Intel首次公布11代酷睿桌面处理器性能:8核i9斩落锐龙12核

科技新消息

自动驾驶汽车的发展史

anyRTC开发者

人工智能 自动驾驶 AI

比特币矿机工作原理

v16629866266

比特币 比特币区块链

TypeScript 渐进迁移指南

LeanCloud

JavaScript typescript nodejs

解决Windows2012 R2下安装PostgreSQL报错的问题

PostgreSQLChina

数据库 postgresql 开源

WiFi6 与 5G 的异同分析

石君

5G wifi 28天写作

避免短信接口被黑客刷取的方法

香芋味的猫丶

短信防刷 接口安全 短信验证码 短信防轰炸 短信防火墙

Java 程序经验小结:类层次优于标签类

后台技术汇

28天写作

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