Не читает апостроф и буквы 'й' 'Й' из txt файла. С++

Одна из задач программы, считывать текст из файла по слову и записывать каждое отдельное слово в вектор. При считывании русского текста разбиение на слова происходит без ошибок за исключением того, что если в слове есть буквы 'й' или 'Й', то вместо этих букв записываются кода "\271" и "\231" соответственно.

Пример записи слов содержащих эти буквы

Пробовал изменять кодировки файла - не помогло. Собственно вопрос в том как это устранить?

код функции отвечающей за чтение и запись в вектор:

void getFilledVector (vector <string>& v) {
    system("cls");
    string fname, fullpath;
    cout<<"Specify the name of file: ";
    cin>>fname;
    cout<<endl;
    fullpath = "c:/papka/"+fname+".txt";
    ifstream fin;
        fin.open(fullpath);        
    if (!fin) 
        cout<<"File is not open."<<endl;
    else
        printf("File is open.");
    cout<<endl;

    string word;
    word.clear();

    while ( fin >> word ) {
        if ((word == "—") || (word == "-"))
            continue;
        v.push_back(word);
        word.clear ();
    }

    fin.close();
}

Ответы (0 шт):