|
|
#1
|
|||
|
|||
Byte to String
Помогите пожайлуста:
Необходимо перевести массив b: array Of byte содержащий Unicode символы в String (ANSI) Как это сделать на Delphi недоумеваю Аналог функции на Visual basic 6.0 StrConv(byval String, type) помогите пожайлуста, просто портирую огромную функцию из vb в Delphi почти все закончил - а вот эта приоблемка у меня не решается |
#2
|
||||
|
||||
Посмотри функции Windows.MultiByteToWideChar и Windows.WideCharToMultiByte ИХМО то что тебе нужно. Если конечто я правильно понял
|
#3
|
|||
|
|||
WideCharToMultiByte оно то вроде то, но!! результат выполнения очевидно не тот что нужно.
Однако MultiByteToWideChar работает как надо. Может я с длиной что-то путаю - НО проблема все таки не исчезла и например используя Код:
function PWideToString(pw: PWideChar): string; var p: PChar; iLen: integer; begin iLen := lstrlenw(pw) + 1; GetMem(p, iLen); WideCharToMultiByte(CP_ACP, 0, pw, iLen, p, iLen * 2, nil, nil); Result := p; FreeMem(p, iLen); end; |
#4
|
||||
|
||||
Я с этим не сталкивался особо.
Вот ссылка http://www.google.com/codesearch?q=lang%3Apascal+UnicodeToAnsi&btnG=%D0% 9F%D0%BE%D0%B8%D1%81%D0%BA&hl=en&lr= то что выдал гугл. Смотри верхнюю. |