AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

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

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

关注

评论

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

Linux开发_摄像头编程(实现拍照、网页监控功能)

DS小龙哥

6月月更

Angular 服务器端渲染应用一个常见的内存泄漏问题

汪子熙

typescript 前端开发 angular Spartacus 6月月更

攻防演练合集 | 3个阶段,4大要点,蓝队防守全流程纲要解读

青藤云安全

网络安全 网络攻防 安全服务 攻防演练

不止于观测|阿里云可观测套件正式发布

阿里巴巴云原生

阿里云 云原生 可观测 套件

如何用 Redis 实现一个分布式锁

Ayue、

redis 分布式锁

redis 精讲系列介绍八 - 淘汰策略

Nick

Redis 核心技术与实战 6月月更 redis 底层原理 redis 淘汰策略 redis 精讲

大一学生课设c——服装管理系统

工程师日月

6月月更

电商如何借助小程序发力

Geek_99967b

小程序 电商

实战监听Eureka client的缓存更新

程序员欣宸

Java SpringCloud 6月月更

Kafka ETL 之后,我们将如何定义新一代实时数据集成解决方案?

tapdata

kafka ETL 数据集成 实时数据 DaaS

DevEco Device Tool 助力OpenHarmony设备开发

OpenHarmony开发者

OpenHarmony

如何使用 Django Forms 创建表单?

海拥(haiyong.site)

Python django 6月月更

开发增效利器—2022年VsCode插件分享

中原银行

ide vscode 插件 中原银行 降本增效

5 个关于 NFT 的技术漏洞

devpoint

区块链 以太坊 NFT 6月月更

java程序员培训 | Java设计模式之桥接模式

@零度

设计模式 JAVA开发

java培训 | Java设计模式之装饰者设计模式

@零度

JAVA开发

K8S学习笔记--安装Docker环境

IT蜗壳-Tango

IT蜗壳 6月月更

NodeJS 防止xss攻击

德育处主任

Node 6月月更

消息队列的丢失、重复与积压问题

Damon

6月月更

【云舟说直播间】-数字安全专场明天下午正式上线

云计算

坚持五件事,带你走出迷茫困境!

博文视点Broadview

直播带货app源码搭建中,直播CDN的原理是什么?

开源直播系统源码

软件开发 直播带货 直播系统 app源码

《Java编程思想》作者Bruce Eckel新作,到底做了哪些升级?

图灵教育

Java

Rancher 2.6 全新 Monitoring 快速入门

Rancher

Kubernetes k8s rancher

JSON入门教程

倔强的牛角

json Fastjson 6月月更

使用Mycat进行MySQL单库分表

迷彩

架构 运维 mycat 分布式数据库中间件 6月月更

成熟的知识管理,应具备哪些条件?

小炮

运行时应用自我保护(RASP):应用安全的自我修养

SEAL安全

RASP

“芯”有灵“蜥”,万人在线!龙蜥社区走进 Intel MeetUp 精彩回顾

OpenAnolis小助手

开源 直播 Meetup 龙蜥社区 走进 Intel

APM 工具 SkyWalking 是什么

耳东@Erdong

监控 Skywalking 6月月更

quarkus+saas多租户动态数据源切换实现简单完美

weir威尔

SaaS 多租户 Quarkus 动态数据源

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