Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с Unicode [D7, XP]


charoey_mag ©   (2008-12-17 11:09:00) 

Поскажите пожалуста ссылочки почитать, как работать с Unicode (8, 16, 16BE). Как с ним работать в Delphi 7?
есть файл с уникодом, читаю из файла в
Data: array of byte;
Data[0]-кодировка
if Data[0]=1 then
result:=copy(widestring(Data),1,length(Data)-1);
Эта строка выдает AccessViolation, почему? В hex посмотрел, первыми еще идут FF FE - что это?


charoey_mag   (2008-12-17 12:37:00) [1]

Со своими вопросами разобрался.

Delphi сама распазнает что юниокд, а что нет? и преобразует?  ведь в моем случае result=string, а в Edit все нормально отображается даже если я потом добавляю ansistring


Сергей М.   (2008-12-17 12:12:00) [2]


> charoey_mag


непонятно, за каким лешим потребовалось хранить юникод-данные в динамическом массиве байт ..


charoey_mag   (2008-12-17 12:03:00) [3]

Насчет  AccessViolation разобрался, сам в индеке ошибся.

Но при выводе строки в Edit:
Edit1.text:=copy(widestring(Data),1,length(Data)-1);
Появляются !??????????????


brother   (2008-12-17 11:17:00) [4]

попробуй хоть так
Data: array[0..1024] of byte;
для начала...


clickmaker   (2008-12-17 11:11:00) [5]

> Эта строка выдает AccessViolation, почему?

наверно, не выделяешь память под Data


Наверх

Титульная страница Поиск, карта сайта Написать письмо