UTF-8/ru
English · Français · Suomi · Русский
UTF-8 (8-bit UCS/Unicode Transformation Format, или 8-битный Формат Преобразования UCS/Unicode) - это кодировка символов переменной длины для Unicode. Символы Unicode от U+0000 до U+007F кодируются просто как байты от 00h до 7Fh. Это означает, что файлы и строки, содержащие только 7-битные символы ASCII, имеют одинаковую кодировку как в ASCII, так и в UTF-8.
Все символы > U+007F кодируются как последовательность из нескольких байтов, в каждом из которых установлены два старших значащих бита. Никакая другая последовательность байтов одного символа не содержится в более длинной последовательности байтов другого символа. Это позволяет легко искать подстроки. Первый байт многобайтовой последовательности, который представляет не-ASCII-символ, всегда находится в диапазоне от C0h до FDh, и он указывает, сколько байтов следует за этим символом. Все последующие байты в многобайтовой последовательности находятся в диапазоне от 80h до BFh. Это обеспечивает легкую ресинхронизацию и надежность.
| Code points (Кодовые точки) | 1st byte | 2nd byte | 3rd byte | 4th byte | старшие значащие биты первого байта многобайтовой последовательности | |
|---|---|---|---|---|---|---|
| U+0000..U+007F | 00..7F | 0 | ASCII | |||
| U+0080..U+07FF | C2..DF | 80..BF | 110 | - UTF-8 Latin characters | ||
| U+0800..U+0FFF | E0 | A0..BF | 80..BF | 1110 | ||
| U+1000..U+FFFF | E1..EF | 80..BF | 80..BF | 1110 | - подстрочные и надстрочные символы UTF8 | |
| U+10000..U+3FFFF | F0 | 90..BF | 80..BF | 80..BF | 11110 | |
| U+40000..U+FFFFF | F1..F3 | 80..BF | 80..BF | 80..BF | 11110 | |
| U+100000..U+10FFFF | F4 | 80..BF | 80..BF | 80..BF | 11110 |
UTF-8 byte Sequences
Функции UTF8
FreePascal
Модуль system содержит несколько основных функций:
- UnicodeToUtf8
- Utf8ToUnicode
- UTF8Encode
- UTF8Decode
- AnsiToUtf8
- Utf8ToAnsi
Lazarus
Lazarus также содержит функции UTF8. Подробности см. LCL Unicode Support
См. также
- Dealing with directory and filenames - UTF8 функции для файлов
- LCL Unicode Support - UTF8 в графических приложениях
- Console mode Pascal: Unicode (UTF8) output - Отображение вывода UTF8 в программах консольного или текстового режима
- UTF8 strings and characters
From the Free Pascal wiki, page "UTF-8/ru", as it stood on 2019-09-04 after a change by Zoltanleo, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
