写点什么

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

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

关注

评论

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

鸿蒙原生应用开发也可以使用DeepSeek了

HarmonyOS开发者

京东联合松灵等多家企业高校推出业内首个具身智能原子技能库架构

松灵机器人

4.98 亿月活背后的国产数据库:咪咕视讯携手 TiDB 攻克内容分发核心系统挑战

PingCAP

数据库 分布式 TiDB

面试被问“你的缺点是什么?”该怎么答?

王磊

交易所开发:构建安全、高效、可靠的数字资产交易平台

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

DeepSeek满血版在IDEA中快的飞起

阿里巴巴云原生

阿里云 云原生 AI程序员 AI程序员体验官

AI+智能财务 | 智能资金预测,智能驱动决策升级!

用友智能财务

企业 财会 经营

区块链技术:构建区块链生态的核心要素

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

以质量为笔,绘数字生活“芯”画卷

E科讯

云原生赋能博云企业转型,openEuler加速自主创新

极客天地

BSI为金斯瑞集团颁发ISO/IEC 27001信息安全管理体系认证证书

财见

告别 996!飞算 JavaAI 如何用 AI 技术让开发者准时下班?

飞算JavaAI开发助手

飞算 JavaAI 代码生成实战:如何用 AI 技术减少 70% 重复编码

飞算JavaAI开发助手

【新年版】JimuReport 积木报表 v1.9.4发布,免费报表、打印设计和视化设计

JEECG低代码

报表 可视化数据 BI 报表 大屏设计 报表工具

DeepSeek满血版在IDEA中快的飞起

阿里云云效

阿里云 云原生 AI程序员 AI程序员体验官

低代码平台国产化部署的架构演进与实践路径——信创生态下的高效开发体系构建

不在线第一只蜗牛

低代码

【连载 17】多线程执行类

FunTester

海信激光电视连续六年稳居全球第一

财见

“NGINX邮件组历史”论坛上线了!

通明湖

nginx 云原生 njet

松灵LIMO赋能科创教育,华动师大滴水湖冬令营培育AI新势力

松灵机器人

区块链技术前沿:DApp、DeFi与IDO开发的深度探索

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

太好了,IDE支持满血版DeepSeek了,我们有救了!

阿里云云效

阿里云 云原生 AI程序员 AI程序员体验官

从 DeepSeek 趋势看 AI 开发工具:飞算 JavaAI 如何解决开发者核心痛点?

飞算JavaAI开发助手

面试官:说说你项目中JWT的执行流程?

不在线第一只蜗牛

Java 面试 服务器

刷题玩梗?LeetCode上的神回复治好了你的精神内耗

卷福同学

面试 LeetCode 神回复

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