Показать сообщение отдельно
  #11  
Старый 09.10.2014, 18:00
Аватар для Freeman
Freeman Freeman вне форума
Местный
 
Регистрация: 05.10.2012
Адрес: Санкт-Петербург
Сообщения: 577
Версия Delphi: 6
Репутация: выкл
По умолчанию

Цитата:
Сообщение от OSIRIS
а можно поподробнее про ansistring? если честно не знал что у него могут быть параметры.... получается параметром указывается в какой кодировке будет строка?
Для начала нужно уяснить, что тип UnicodeString -- метастрока, то есть общая структура, позволяющая хранить текстовые данные с разным физическим представлением символов. Кодировки на основе кодовых страниц и UTF-8 хранят символы в виде одного или нескольких байт, а UTF-16 -- в виде одного или двух слов, которые называют WideChar. Если не путаю, UnicodeString поддерживает также и UTF-32, в которой символы представлены двойными словами -- UCS4Char.

Особенность в том, что словные и двухсловные символы имеют лишь одно логическое представление -- UTF-16 и UTF-32 соответственно, а вот байтовые интерпретируются по-разному в зависимости от кодовой страницы. В Delphi это и реализовано: AnsiString является подтипом UnicodeString для байтовых символов, и ему можно задать кодовую страницу.
__________________
Не стоит путать форумы с богадельнями. © Bargest
Ответить с цитированием