![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
String -> WideString
BST © (2005-12-05 18:07:00)Помогите пожалуйста кодом :)
ситуация: Есть
str:='Hello AsWorld';
нужно переформатировать в Unicode (CP_UTF8);
З.Ы. Я нашел похожий вопрос в яндексе, но ссылка гнилая на вашем сайте.. А поис у вас не работает, так что сорьки если уже такую тему поднимали...
З.З.Ы Функция из Хелпа не работает, выдаёт пустой результат, может пользоваться научите .. или попроще пример дадите
Спасибо за помощь!
Prohodil Mimo (2005-12-07 01:32:00) [1]Prohodil Mimo © (07.12.05 1:17) [7]
Function AnsiToWide(AText:String;Lang:Word): Variant;
потому что я в Excel значения передавал.
Prohodil Mimo (2005-12-07 01:17:00) [2]
Function AnsiToWide(AText:String;Lang:Word):Variant;
Var
Len:Integer;
WS:WideString;
Begin
Len:=Length(AText);
SetLength(WS,Len); // overallocate, trim later
Len:=MultiByteToWideChar(Lang,0,PChar(AText),Len,PWideChar(WS),Len);
If Len<0 then Len:=0;
SetLength(WS,Len);
Result:=WS;
End;
palva (2005-12-05 21:01:00) [3]> Все переформат автоматом
Вам же надо было CP_UTF8
BST (2005-12-05 19:50:00) [4]Вообще - то .. нашел.. Для Нупов таких как я
ДЕлается так:
var
s1 : String;
s2 : WideString;
begin
S2 := S1;
end;
Все переформат автоматом
Alexandr Bydantcev (2005-12-05 19:27:00) [5]Ну под тип примера сойдет
var str,s:String;
wide:PWideChar;
x:integer;
begin
str:='Hello';
x:=sizeof(WideChar)*length(str)+1;
GetMem(wide,x);
StringToWideChar(str,wide,x);
s:=WideCharToString(wide);
Freemem(wide);
ShowMessage(s);
end;
Andrey.Ru (2005-12-05 19:07:00) [6]MultiByteToWideChar(CP_ACP, 0, PCHAR, Integer, PWideChar, 0) ;
Alexandr Bydantcev (2005-12-05 19:01:00) [7]А стандартная функция StringToWideChar не подходит?
BST (2005-12-05 18:51:00) [8]Помогите пожалуйста :(