28 releases (12 stable)
| 1.0.11 | Dec 27, 2025 |
|---|---|
| 1.0.10 | Mar 3, 2025 |
| 1.0.9 | Jul 15, 2023 |
| 1.0.6 | Mar 3, 2023 |
| 0.2.2 | Jul 31, 2016 |
#20 in Value formatting
3,922,292 downloads per month
Used in 4,858 crates
(45 directly)
44KB
630 lines
dtoa
This crate provides fast conversion of floating point primitives to decimal strings. The implementation is a straightforward Rust port of Milo Yip's C++ implementation dtoa.h. The original C++ code of each function is included in comments.
See also itoa for printing integer primitives.
[dependencies]
dtoa = "1.0"
Example
fn main() {
let mut buffer = dtoa::Buffer::new();
let printed = buffer.format(2.71828f64);
assert_eq!(printed, "2.71828");
}
Performance
The dtoa-benchmark compares this library and other Rust floating point
formatting implementations across a range of precisions. The vertical axis in
this chart shows nanoseconds taken by a single execution of
dtoa::Buffer::new().format_finite(value) so a lower result indicates a faster
library.

License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~82KB