我在转换为小写字母的Unicode字符在VC + + MFC中的问题。我有一个CString Variable.so中的Unicode字符,与英语MakeLower()工作正常,我得到更低但它不能将unicode字符转换为小写字母。我尝试过STL算法转换:如何使小写字母的Unicode字符
std :: string data =“ИИИЛЛЛЛ”; // bulgerian chars
std :: transform(data.begin(),data.end(),data.begin(),:: tolower);
但它无法加载unicode字符,我得到“????”符号代替unicode字符。
你可以请让我知道是否有一个解决方案的unicode字符。我不喜欢使用boost库。提前感谢!
'std :: tolower'是字符,不是字节型的,因此不能在非ANSII字符串上执行操作。在这种情况下,你应该考虑使用'boost :: locale'。 – nijansen
@nijansen:他使用C调用':: tolower',而不是C++'std :: tolower'。 –
MSalters
@MSalters你是对的,我的坏。 – nijansen