Есть файл с кодировкой UTF-8, в нем - русские символы.Надо в файле найти заданную строку(из русских символов).
std::fstream searchFile("D:\\test.txt");
searchFile.unsetf(std::ios_base::skipws);
std::string searchStr="строка, которую надо найти";
std::string buf(searchStr);
int bufSize=buf.length();
for (int i=0;i<bufSize;++i)buf[i]='x';
char s;
while(searchFile>>s)
{
buf[bufSize-1]=s;
if (buf==searchStr)std::cout<<"строка найдена!"<<std::endl;
for(int i=1;i<bufSize;++i)buf[i-1]=buf[i];
}
Этот вариант не работает с UTF-8, хотя в ANSI все отлично.Как можно решить проблему для UTF-8?