Fast floating point to string conversion
194
stars
525
commits
Rust
primary language
Aug 6, 2026
updated
Pure Rust implementation of Żmij, an algorithm to quickly convert floating point numbers to decimal strings.
This Rust implementation is a line-by-line port of Victor Zverovich's implementation in C++, https://github.com/vitaut/zmij.
fn main() {
let mut buffer = zmij::Buffer::new();
let printed = buffer.format(1.234);
assert_eq!(printed, "1.234");
}
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
zmij::Buffer::new().format_finite(value) so a lower result indicates a faster
library.

Rust
100.0%
Fast floating point to string conversion
194
stars
525
commits
Rust
primary language
Aug 6, 2026
updated
Pure Rust implementation of Żmij, an algorithm to quickly convert floating point numbers to decimal strings.
This Rust implementation is a line-by-line port of Victor Zverovich's implementation in C++, https://github.com/vitaut/zmij.
fn main() {
let mut buffer = zmij::Buffer::new();
let printed = buffer.format(1.234);
assert_eq!(printed, "1.234");
}
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
zmij::Buffer::new().format_finite(value) so a lower result indicates a faster
library.

Rust
100.0%