This is local-encoding-ng, a library which wastly simplifies dealing with the unfamous Windows 8-bit encodings.
For example, in Russian version:
Windows have functions which help in these conversions:
MultiByteToWideChar
and
WideCharToMultiByte
.
This library provides a simple API for these functions.
Put this in your Cargo.toml
:
toml
[dependencies]
local-encoding-ng = "*"
Or, better, use cargo-edit to add it with a correct version and use it to keep the version up-to-date.
For example: ```rust use localencodingng::{Encoding, Encoder};
fn main() { println!("Unicode string: {}", Encoding::ANSI.tostring(b"ANSI string").unwrap()); println!("Unicode string: {}", Encoding::OEM.tostring(b"OEM string").unwrap()); } ```