Здравствуйте Уважаемые Программисты!
Есть работающий проэкт, в нём некий текст записывается в текстовый файл кирилицей, но после выхода из программы и при последующей загрузке, из файла читается тот же текст, но не в той кодировке, которая должна быть. Система Windows 7, кодировка системы наверное ANSI, а в программе я использую UTF-8.
Вот текст файла где происходит запись в файл:
bool MainWindow::saveToFile()
{
QFile file(QDir::homePath() + "/.text1.conf");
if(file.open(QIODevice::WriteOnly))
{
QTextStream stream(&file);
for(int i = 0; i < model->tasks->count(); i++)
{
stream << (*model->tasks)[i].text;
stream << QString(" ");
stream << (*model->tasks)[i].minutes;
stream << "\n";
}
file.close();
return true;
}
else
{
return false;
}
return true;
}
И чтение из файла:
void MainWindow::loadFromFile()
{
QFile file(QDir::homePath() + "/.text1.conf");
if(file.exists())
{
if(file.open(QIODevice::ReadOnly))
{
QTextStream stream(&file);
while(!stream.atEnd())
{
QString line = stream.readLine();
QTextStream lineStream(line.toUtf8());
QString text;
int minutes;
if(!line.trimmed().isEmpty())
{
text = "";
while(!lineStream.atEnd())
{
QString temp;
lineStream >> temp;
bool ok = false;
QVariant(temp).toInt(&ok);
if(ok)
{
int mins = QVariant(temp).toInt(&ok);
minutes = mins;
}
if(!lineStream.atEnd())
text.append(temp + " ");
}
model->tasks->append(TaskRow(text, minutes));
}
}
file.close();
}
else
{
QMessageBox::warning(this,"TTTTTTTTT");
loadSampleData();
}
}
else
{
loadSampleData();
}
}
Как изменить код, чтобы чтение происходило кирилицы, а не иероглифов?