Преобразование широкой строки символов в строчные в C ++

Как я могу преобразовать строку wchar_t из верхнего регистра в нижний регистр в C ++?

Строка содержит смесь японских, китайских, немецких и греческих символов.

Я думал об использовании Towlower ...

http://msdn.microsoft.com/en-us/library/8h19t214%28VS.80%29.aspx

.. но в документации сказано что:

Конверсия буксировщика зависит от региона. В этом случае изменяются только символы, относящиеся к текущей локали.

Редактировать: Может быть, я должен описать, что яя делаю. Я получаю поисковый запрос Unicode от пользователя. Это'изначально в кодировке UTF-8, но ям, преобразовав его в широкоформатный (я могу ошибаться в формулировке). Мой отладчик (VS2008) правильно отображает символы японского, немецкого и т. Д. В "переменные быстрые часы ", Мне нужно пройти через другой набор данных в Юникоде и найти совпадения строки поиска. Хотя это не проблема для меня, когда поиск чувствителен к регистру,Более проблематично сделать это без учета регистра. Мой (возможно, наивный) подход к решению проблемы состоял бы в том, чтобы преобразовать все входные и выходные данные в нижний регистр, а затем сравнить их.

Ответы на вопрос(4)

Ваш ответ на вопрос