4 个版本
0.1.3 | 2023年5月1日 |
---|---|
0.1.2 | 2023年1月26日 |
0.1.1 | 2023年1月25日 |
0.1.0 | 2023年1月25日 |
在 值格式化 中排名第 114
每月下载量 4,013 次
在 6 个Crates中(直接使用4个)中使用
23KB
404 行
runtime-format
格式化,但在运行时处理。
use runtime_format::{FormatArgs, FormatKey, FormatKeyError};
use core::fmt;
impl FormatKey for DateTime {
fn fmt(&self, key: &str, f: &mut fmt::Formatter<'_>) -> Result<(), FormatKeyError> {
use core::fmt::Write;
match key {
"year" => write!(f, "{}", self.year()).map_err(FormatKeyError::Fmt),
"month" => write!(f, "{}", self.short_month_name()).map_err(FormatKeyError::Fmt),
"day" => write!(f, "{}", self.day()).map_err(FormatKeyError::Fmt),
"hours" => write!(f, "{}", self.hours()).map_err(FormatKeyError::Fmt),
"minutes" => write!(f, "{}", self.minutes()).map_err(FormatKeyError::Fmt),
"seconds" => write!(f, "{}", self.seconds()).map_err(FormatKeyError::Fmt),
_ => Err(FormatKeyError::UnknownKey),
}
}
}
let now = DateTime::now();
let fmt = "{month} {day} {year} {hours}:{minutes}:{seconds}";
let args = FormatArgs::new(fmt, &now);
// Outputs "Jan 25 2023 16:27:53"
println!("{args}");
依赖项
~65KB