7 个版本
0.2.0 | 2024 年 6 月 7 日 |
---|---|
0.1.5 | 2024 年 6 月 3 日 |
#483 in 算法
10KB
162 行
ms2-rs
⏱️
ms2 是一个 Rust 库,用于为 Rust 复制 TypeScript 的 ms 包。它可以帮助您将毫秒转换为可读的时间字符串,反之亦然。如果您需要在 Rust 项目中处理时间,ms2 会使其变得简单。
功能
- ⏳ 将时间字符串(如 "2 天")转换为毫秒。
- ⏱️ 将毫秒转换为时间字符串。
- ⏲️ 支持常见的单位,如秒、分钟、小时和天。
- 👍 基于 TypeScript 的 ms 包的简单易用的 API。
- 🍒 可以导入
format
或parse
以使用显式和类型安全的方法
用法
将 ms2 添加到您的 Cargo.toml
[dependencies]
ms2 = "0.2.0"
然后在您的代码中使用它
use ms2::ms;
fn main() {
let ms_output = ms("2 days").unwrap();
match ms_output {
ms2::MsOutput::Milliseconds(ms) => println!("{}", ms), // Outputs: 172800000
_ => panic!("Expected milliseconds"),
}
}
使用 ms2
和整数输入将它们转换为可读的字符串
use ms2::ms;
fn main() {
let time_str_output = ms(172800000).unwrap();
match time_str_output {
ms2::MsOutput::Str(time_str) => println!("{}", time_str), // Outputs: "2 days"
_ => panic!("Expected string"),
}
}
使用便利方法 unwrap_number
和 unwrap_str
use ms2::{ms, UnwrapMsOutput};
fn main() {
let ms_value = ms("1 hour").unwrap_number();
println!("{}", ms_value); // Outputs: 3600000
let time_str = ms(3600000).unwrap_str();
println!("{}", time_str); // Outputs: "1 hour"
}
使用原始的显式和类型安全方法 format
和 parse
use ms2::{format, parse};
fn main() {
println!("parse(\"60 seconds\") = {}", parse("60 seconds").unwrap()); // parse("60 seconds") = 60000
println!("format(172_800_000) = {}", format(172_800_000)); // format(172_800_000) = 2 days
}
支持负值
use ms2::{format, parse};
fn main() {
println!("parse(\"-60 seconds\") = {}", parse("-60 seconds").unwrap()); // parse("-60 seconds") = -60000
println!("format(-172_800_000) = {}", format(-172_800_000)); // format(-172_800_000) = -2 days
}
贡献
欢迎贡献!请查看 CONTRIBUTING.md
文件以获取更多信息。
许可证
本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。
依赖
~0.4–1MB
~23K SLoC