写点什么

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

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

关注

评论

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

「科大讯飞」正式加入 Karmada 用户组!携手社区共建多集群生态

华为云原生团队

云计算 容器 云原生 Karmada

电线生产行业 MES 系统解决方案

万界星空科技

mes 电线电缆行业 电线电缆mes 电线行业 电线mes

AI与.NET技术实操系列

秃头小帅oi

报名倒计时丨最新议题精选:GenAI如何转变产品设计工作流程?汽车电子与半导体创新交叉点...

Altair RapidMiner

AI 数据分析 仿真 高性能计算 智能制造

HCL AppScan Standard 10.8.0 (Windows) - Web 应用程序安全测试

sysin

AppScan

AI 时代下,企业如何借助工具实现降本增效?(实例详解)

Techinsight

用友2025大型企业财务数智化峰会成功举办!

用友智能财务

企业 财务 管理会计

华为开发者空间:基于DeepSeek构建RAG向量数据库

华为云开发者联盟

人工智能 大模型 向量数据库 rag DeepSeek

分享大家常用的免费在线项目管理系统:2025年主流17款

易成研发中心

项目管理工具

Zabbix 7.0 LTS OVF (build with LNMP based on Rocky 8.10) - VMware 虚拟机模板

sysin

zabbix

AUTOSAR网络管理自动化测试如何创建测试框架

易成研发中心

自动化测试

京东零售基于国产芯片的AI引擎技术

京东科技开发者

揭秘Chrome DevTools:从原理到自定义调试工具

京东科技开发者

技术融合实战!Ollama携手Deepseek搭建知识库,Continue入驻VScode

京东科技开发者

LSM-TREE:从零开始实现一个高性能键值存储

得物技术

后端

弥合技能差距,掌握财务转型过程中的运营指标

智达方通

全面预算管理 财务管理 财务转型

Studio 3T 2025.4 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端

sysin

Gitea Enterprise 23.4.0 (Linux, macOS, Windows) - 本地部署的企业级 Git 服务

sysin

Gitea

测试是如何跟进和管理 bug

易成研发中心

深度解析:大模型如何让财务 RPA 机器人 “脱胎换骨”

Techinsight

财务 财务管理

RealClip上线:革新轻量级数字互动体验

xuyinyin

Linux系列:如何用 C#调用 C方法造成内存泄露

秃头小帅oi

「大模型 + NoETL = 万数皆可问!」3.14 上海,与头部企业共探 Chat 问数的落地之道

Aloudata

数据分析 数据开发 数据管理 指标平台 指标定义

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