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

Вниз

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

 
Cara ©   (2004-07-17 14:59) [0]

Добрый день.
Подскажите пожалуйсто как перевести Widestring в String.


 
VMcL ©   (2004-07-17 18:42) [1]

var
 A: String;
 B: WideString;
begin
 // ...
 A := B;
 // ...
end;


 
Cara ©   (2004-07-17 19:58) [2]

Строка  Widestring в Юникоде.
При переводе
A := B;
получаю на выходе
"??????????"


 
Cardinal ©   (2004-07-17 20:24) [3]

String, как я знаю, не поддерживает Unicode


 
Cara ©   (2004-07-17 20:27) [4]

Ну да.
Я по этому и спрашиваю как правильно конвертировать строку в Юникоде в стандартную.


 
VMcL ©   (2004-07-17 22:21) [5]

>>Cara ©  (17.07.04 19:58) [2]

Значит, твоя Unicode строка содержит символы не представимые в кодировке ANSI с учётом текущей кодовой страницы. Можешь попробовать вручную сделать преобразование - см. WideCharToMultiByte(), хотя компилятор при присваивании, приведенном в [1], сам вызывает WideCharToMultiByte().


 
Суслик ©   (2004-07-19 11:14) [6]

Копилятор вызывает сам WideCharToMultiByte(), но, если не ошибаюсь, для текущей кодовой страницы.

Можно вызывать эту функцию самому, передавая любую кодовую страницу. Но надо быть готовым, что не все символы будут преобразованы верно. Если у вас в уникоде миксуются разные кодировки - то что-то точно пропадет :))) Т.е. будет "?".

Если нужны знания в этой области, то см. раздел MSDN nls - national language support. Поиском поищите - сразу найдете, самому лень ссылку искать.


 
Anatoly Podgoretsky ©   (2004-07-19 11:59) [7]

Cara ©   (17.07.04 19:58) [2]
Значит невозможно конвертировать в твою текущую кодувую страницу.

Cardinal ©   (17.07.04 20:24) [3]
Неверно по сути, вот выписка из справки
The reserved word string functions like a generic type identifier

Это может быть ShortString, AnsiString или WideString, на текущий момент как минимум первые два


 
clickmaker ©   (2004-07-19 13:44) [8]

var
A: String;
B: WideString;
begin
// ...
A := string(B);
// ...
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1092574828
petvv
2004-08-15 17:00
2004.08.29
О запуске приложений под DOS


14-1092299325
Странник
2004-08-12 12:28
2004.08.29
Туркменбаши приказал построить рядом с Ашхабадом дворец из льда


3-1091503418
mixam
2004-08-03 07:23
2004.08.29
dbe


14-1091638905
panov
2004-08-04 21:01
2004.08.29
Как обойтись без Access violation?


14-1092312824
Andy BitOff
2004-08-12 16:13
2004.08.29
Подскажите компонент, для создания doc по шаблону.