Кодировка в LAZARUS

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Luxor
новенький
Сообщения: 72
Зарегистрирован: 10.06.2010 19:30:43

Кодировка в LAZARUS

Сообщение Luxor »

Записываю текст в поле Edit1. Реальная длина текста 10 символов. А при использовании фонкции Length(Edi1.Text) - мне показывает что длина 20 символов. Что там за кодировка?
Получается, при разборе строки - буква - каждый второй символ.
скалогрыз
долгожитель
Сообщения: 1804
Зарегистрирован: 03.09.2008 02:36:48

Сообщение скалогрыз »

Luxor писал(а):Записываю текст в поле Edit1. Реальная длина текста 10 символов. А при использовании фонкции Length(Edi1.Text) - мне показывает что длина 20 символов. Что там за кодировка?
Получается, при разборе строки - буква - каждый второй символ.

это UTF8, каждый символ не входящий в первые 128 символов (#0..#127) кодируется двумя или более байтами.
Для получения длинны строки в буквах (а не байтах) используй функцию UTF8Length из модуля LCLProc
Luxor
новенький
Сообщения: 72
Зарегистрирован: 10.06.2010 19:30:43

Сообщение Luxor »

Спасибо.
Ответить