Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.03.28;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-1237158348
istok
2009-03-16 02:05
2010.03.28
TdxMemData...


2-1264710471
Делфиец
2010-01-28 23:27
2010.03.28
Как заблокировать новигацию в таблице?


15-1263046404
Алекс555
2010-01-09 17:13
2010.03.28
Кто-то очень много ест .... памяти


2-1264175878
nonameee
2010-01-22 18:57
2010.03.28
Потоки как работать параллельно


15-1262974524
Ламо777
2010-01-08 21:15
2010.03.28
Софт для захвата потокового видео с веб-страниц