Вниз
Скачать: CL | DM;

String в delphi2010   Найти похожие ветки 

 
Дмитрий С ©   (2010-01-10 22:18) [0]

Начал новый прект на 2010ом (до этого был 2007), возникли вопросы по поводу юникода. Почитал хелп, но хочу уточнить правильно ли я все понял. По порядку:
1. Бывший string (char, pchar), теперь ansistring (ansichar, pansichar). Теперь string=unicodestring. Как в данном случае кодируются строки? В чем его отличие от widestring?
2. Есть строка s:string. Как правильно передать ее в winapi функцию? Какую длину передавать, если она требуется(например TextOutW)?
3. Нужно записать строку в stream, а потом восстановить оттуда. Раньше я делал так:
sz:=length(str);
stream.writebuffer(sz, sizeof(sz));
stream.writebuffer(str[1], sz);
-----
stream.readbuffer(sz, sizeof(sz));
setlength(str,sz);
stream.readbuffer(str[1],sz);
а как быть с unicodestring?
4. Опять про апи: как правильно выделять буфер для получения строкового значения?например для GetWindowTextW?
5. Как Закодировать строку, например, в utf8 (т.е. Получить буфер и его длину). Как ее правильно восстановить?
Как вообще получить длину буфера unicodestring (это к задаче про запись в stream)?

Заранее благодарен.


 
Anatoly Podgoretsky ©   (2010-01-10 22:31) [1]

1. почему теперь, оно и раньше было ansistring, различие в наличии счетчика использования.
2. а какой формат функции
3. Примерно так length(str) * SizeOf(Char);
4. какой формат функции, что она возвращает
5. Utf8Str := UnicodeStr, восстановить UnicodeStr := Utf8Str
Уже отвечено


 
Eraser ©   (2010-01-11 04:45) [2]

http://edn.embarcadero.com/article/38446
http://edn.embarcadero.com/article/38582
http://edn.embarcadero.com/article/38703



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
15-1262805333
Fenik
2010-01-06 22:15
2010.03.28
Нелегко быть президентом Украины


15-1262910051
DillerXX
2010-01-08 03:20
2010.03.28
Сопротивление...


2-1264703807
Jimmy
2010-01-28 21:36
2010.03.28
Задержка


15-1263072625
Юрий
2010-01-10 00:30
2010.03.28
С днем рождения ! 10 января 2010 воскресенье


2-1264752952
s_t_d
2010-01-29 11:15
2010.03.28
Последовательность, орг. переход на новую страницу




   Наверх