Преформатиране от UNICODE в ASCII

2 отговора 92 прегледа
#1

Преформатиране от UNICODE в ASCII

Знае ли някой кой е най-простия начин за преформатиране на тектс от UNICODE формат в ASCII вид с Делфи? Става въпрос, когато се копира UNICODE кирилски текст с PASTE в едно EDIT поле да се изобразява правилно, а не с "???????". В RichEdit се "поема" добре, но ми трябва в EDIT и въпреки че се поразрових из хелповете не намерих нещо "просто".

Отговор
в отговор на Mиpo #2

Re: Преформатиране от UNICODE в ASCII

пробвай с UTF8Decode
и ако не стане го потърси в HELP на Delphi и след това кликни в "Category/character set conversions" за да видиш всички функции свързани с конвертиране от Unicode и пробвай с тях, освен ако не знаеш конкретния encoding на текста който получаваш

Отговор
в отговор на Mиpo #3

Re: Преформатиране от UNICODE в ASCII

Ето ти просто и много ефикасно:


int WideCharToMultiByte(

UINT CodePage, // code page
DWORD dwFlags, // performance and mapping flags
LPCWSTR lpWideCharStr, // address of wide-character string
int cchWideChar, // number of characters in string
LPSTR lpMultiByteStr, // address of buffer for new string
int cchMultiByte, // size of buffer
LPCSTR lpDefaultChar, // address of default for unmappable characters
LPBOOL lpUsedDefaultChar // address of flag set when default char. used
);


За повече информация виж хелпа :)

Не всичко което виси е Windows, но той най-често го прави !!!

Редактирано от Пaпaraлa Йoprи на

Отговор