#unicode #windows #win32


Mapping between Windows code page numbers and encoding_rs character encodings

3 unstable releases

Uses old Rust 2015

0.1.1 Dec 2, 2018
0.1.0 Dec 2, 2018
0.0.1 May 3, 2018

#881 in Encoding

Download history 7386/week @ 2023-06-09 9482/week @ 2023-06-16 10179/week @ 2023-06-23 8649/week @ 2023-06-30 9981/week @ 2023-07-07 9727/week @ 2023-07-14 10385/week @ 2023-07-21 10011/week @ 2023-07-28 9742/week @ 2023-08-04 9850/week @ 2023-08-11 10490/week @ 2023-08-18 11951/week @ 2023-08-25 10149/week @ 2023-09-01 11116/week @ 2023-09-08 13153/week @ 2023-09-15 12285/week @ 2023-09-22

49,069 downloads per month
Used in 54 crates (7 directly)


194 lines

Build Status crates.io docs.rs Apache 2 / MIT dual-licensed


Mapping between Windows code page identifiers and encoding_rs Encodings.

Why a Separate Crate?

This crate isn't part of encoding_rs itself in order to avoid scope creep for encoding_rs itself and to signal that Windows code page applicability of encoding_rs is secondary. It's not completely incidental due to Web history, but encoding_rs will prioritize compliance with the WHATWG Encoding Standard over matching the Windows system converters exactly. Still, encoding_rs is in practice useful for decoding legacy Windows data, because all the "ANSI code pages" that are the default for some Windows locale are present in the Encoding Standard, because those defaults have influenced the Web.


Please see the file named COPYRIGHT.

API Documentation

Generated API documentation is available online.

Security Considerations

Only code page numbers whose corresponding labels map to the replacement encoding in the Encoding Standard map to the replacement encoding here, despite many other code page numbers referring to encodings with similar security problems.


This is a personal project. It has a Mozilla copyright notice, because it's partially generated by the Python script in the encoding_rs repo. You should not try to read anything more into Mozilla's name appearing.


Initial non-placeholder release.


~117K SLoC