Здравствуйте!
Давайте разберемся с кодировками. Ситуация сейчас такая. Имею систему с локалью KOI-8R. Имею HTML файлы в кодировке UTF-8 (в них нигде charset не прописан, просто файлы с HTML разметкой в кодировке UTF-8).
Открываю файл через команды
QFile f(fullfilename); // Где fullfilename - полный путь к файлу
edittextarea->setHtml( QString::fromUtf8(f.readAll()) ); // Где edittextarea - объект класса QTextEdit
После редактирования сохраняю текст в файл командами
QTextStream out(&fullfilename);
QString content=edittextarea->toHtml();
out << content.toUtf8();
И получаю файл с битой кодировкой, в котором вместо русских букв пробелы (0x20), иногда какие-то коды типа 0x9C, 0x9D...
А если не давать команду конвертации при сохранении, например так
То тогда сохраненный файл получается в системной кодировке KOI-8R, а нужно чтоб он был в той же UTF-8.
Вопрос - как в QT4 считывать и записывать файлы в нужной кодировке UTF-8, если кодировка локали отличается от UTF-8?