Здравствуйте, Centaur, Вы писали:
C>Это UTF-8 и есть. Прогнать сначала через UrlDecode, потом работать c UTF-8. Все базы, файлы и т.п. держать в UTF-8. Вывод делать тоже в UTF-8, с соответствующим заголовком Content-Type.
С этим все в поряде
C>Как вариант — конвертировать в UTF-16 и обратно с помощью MultiByteToWideChar и WideCharToMultiByte c CP_UTF8. Про ANSI забыть как страшный сон.
Спасибо, открыли мне глаза, следующий код решил незадачку!!!
Procedure.s UTF8toMB(U2S.s)
#CP_UTF8=65001
*u2s_out = AllocateMemory(1024)
l = MultiByteToWideChar_(#CP_UTF8,0,@U2S,-1,0,0)
l = MultiByteToWideChar_(#CP_UTF8,0,@U2S,-1,*u2s_out,l)
l = WideCharToMultiByte_(#CP_ACP,0,*u2s_out,-1,0,0,0,0)
u2s_out2.s = Space(l)
l = WideCharToMultiByte_(#CP_ACP,0,*u2s_out,-1,@u2s_out2,l,0,0)
FreeMemory(*u2s_out)
ProcedureReturn u2s_out2
EndProcedure