Windows-1250 Windows-1250 (CP-1250, Central European) Windows Code Pages
The Windows-native Central European code page — the practically dominant encoding for Polish, Czech, Hungarian and related languages on Windows systems.
What it is
Windows-1250 is Microsoft's Central European code page, the practical real-world counterpart to ISO-8859-2 — same relationship pattern as Windows-1252 to Latin-1. It covers Polish, Czech, Slovak, Hungarian, Slovenian, Croatian, and Romanian, and was the dominant encoding for Central European text specifically on Windows systems before UTF-8 became standard.
Byte structure
| Byte range | Content |
|---|---|
| 0x00–0x7F | Identical to ASCII |
| 0x80–0x9F | Printable characters (curly quotes, dashes, etc.) — the range ISO-8859-2 leaves as unused control codes |
| 0xA0–0xFF | Largely shared with ISO-8859-2's Central European accented letters, with some differences |
Why your text is garbled (symptom → cause)
| Symptom | Likely cause |
|---|---|
| Central European accented letters mostly correct, but quotes/dashes wrong | Windows-1250 vs. ISO-8859-2 confusion — the two differ mainly in the 0x80–0x9F range |
| Text correct on Windows, garbled after export to Unix/web systems | Windows-1250 was assumed by the source, but the destination expected UTF-8 or ISO-8859-2 |
Compatibility & gotchas
- The Windows-native counterpart to ISO-8859-2, and the more commonly deployed of the two in real-world Central European Windows software historically.
- Word/Outlook smart-quote substitution applies here the same way it does for Windows-1252 — AutoCorrect's curly quotes and dashes are Windows-125x-family characters that can mismatch if text moves through a system expecting a different encoding.
Fixing it
- Command-line conversion:
iconv -f WINDOWS-1250 -t UTF-8 input.txt -o output.txt
Comparison
| Encoding | Key difference from Windows-1250 |
|---|---|
| ISO-8859-2 | Same base accented-letter coverage, but leaves the 0x80–0x9F range as unused control codes instead of printable characters |
| UTF-8 | Full Unicode coverage, the modern default |
FAQ
Is Windows-1250 the same as ISO-8859-2?
Nearly, but not quite — they share most accented-letter assignments but differ in the 0x80–0x9F range, the same pattern seen between Windows-1252 and Latin-1.
Fun fact
The Windows-125x code page family (1250 through 1258) all follow the same basic design pattern established by Windows-1252 — take a corresponding ISO-8859 base, then fill the unused 0x80–0x9F control-code range with useful printable characters — making them a consistent, if occasionally confusing, sibling set for developers working across multiple regions.