#include <QCoreApplication>
#include <QFile>
#include <QDebug>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QFile file("testfile.txt");
file.open(QIODevice::ReadOnly | QIODevice::Text);
QByteArray data = file.readAll();
QTextCodec *codec = QTextCodec::codecForName("Windows-1251");
QString str = codec->toUnicode(data);
qDebug()<<data<<str;
return a.exec();
}
Если не работает, то тут либо исходный текст не в Windows-1251 (Например в KOI8-R), либо то, куда выводите, не поддерживает юникод или что-то не то со шрифтом.
P.S. Я думал в 21 веке проблемы кодировки уже решены :DD