You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Rust中使用chrono处理日期时间时如何始终显示毫秒?

你使用的格式串中%.f的默认行为是自动省略亚秒部分的尾部零,当毫秒值为0时会直接省略整个小数段,这是chrono库的内置设计,没有额外开关可以调整这个默认行为。

如果需要强制固定显示3位毫秒,无论数值是否为0,只需把格式符替换为%.3f即可,数字3代表固定保留3位亚秒(对应毫秒精度),尾部会自动补零。修改后的代码如下:

use chrono::NaiveDate;

fn main() {
    let date = NaiveDate::from_ymd(2015, 7, 1).and_hms_milli(0, 0, 0, 0);
    println!("{}", date.format("%Y-%m-%dT%H:%M:%S%.3f"));
}

运行后输出结果为2015-07-01T00:00:00.000,符合预期。如果需要更高精度,比如微秒可以用%.6f,纳秒可以用%.9f,按需调整即可。

内容的提问来源于stack exchange,提问作者frankenapps

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 04:36:03