Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Отобразить UNICODE в компонентах Delphi   Найти похожие ветки 

 
Tack   (2004-10-27 15:13) [0]

Как отобразить текст, представленный в виде строковых ресурсов UCS2 (Unicode 2 байта) в визуальных компонентах?

Отображаемая строка в виде WideChar, загружена из строкового ресурса, созданного, например, в редакторе Shtirlitz в кодировке UCS2.

Пытался использовать WideCharLenToString() - получается абракадбра какая-то.


 
clickmaker ©   (2004-10-27 15:30) [1]


> Отображаемая строка в виде WideChar, загружена из строкового
> ресурса

Как загружена?


 
Tack   (2004-10-27 15:40) [2]

var
 F: Integer;
 S: WideString;
begin
 //
 //
 F := FileOpen("test.txt", fmOpenRead or fmShareDenyNone);
 SetLength(S, 500);
 FileRead(F, S, 499);
 Label1.Caption := WideCharLenToString(@S, Length(S));
 FileClose(F);


 
clickmaker ©   (2004-10-27 15:43) [3]

а так

var
F: Integer;
wsz: array[0..500] of WideChar;
begin
//
//
F := FileOpen("test.txt", fmOpenRead or fmShareDenyNone);
FileRead(F, wsz, SizeOf(wsz));
Label1.Caption := WideCharLenToString(wsz, SizeOf(wsz));
FileClose(F);


 
Tack   (2004-10-27 15:47) [4]

Работает! Спасибо!
Только спереди строки вылез вопросительный знак почему-то....

Слушай, а что, у WideString-а первые байты забиты под служебную информацию, что ли?


 
Tack   (2004-10-27 15:50) [5]

И я понял, почему вылез спереди вопросительный знак. Потому что строка в файле начинается с двухбайтового кода FFFE. Это признак кодировки, да?



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
14-1098802549
YurikGL
2004-10-26 18:55
2004.11.14
Официальный предствитель фирмы Microsoft


14-1098944904
Ega23
2004-10-28 10:28
2004.11.14
Голосование!


1-1098871447
Alexious
2004-10-27 14:04
2004.11.14
Chart


1-1099239142
Piero
2004-10-31 19:12
2004.11.14
Проблемма с собственным классом


14-1098942290
ИМХО
2004-10-28 09:44
2004.11.14
Рекордная серия Арсенала оборвалась...