[SOLVED] QSettings Codec Problem
-
Hi all,
I try to read the values from an ini file using by QSettings. That file includes Turkish characters (İ, ç, ğ, etc). I can't solve this problem although I've used setIniCodec. What can the problem be?
@ QSettings mSettings("params.ini", QSettings::IniFormat);
mSettings.setIniCodec("ISO 8859-9");
QStringList mAliases = mSettings.value("SerialNumbers/AliasList").toString().split(",");
@The content of Ini file:
[SerialNumbers]
AliasList="TSD,YBS,İAS"The values of mAliases: TSD, YBS, \460AS
Thanks a lot for your helps and clarification.
-
Thanks Galactik. I've tried your advice as the following below. The result string has been "TSD, YBS, ?AS".
I've noticed that ini file encoded by ANSI using by notepad++. I've converted to UTF-8 but the result string is empty after the encoding modification. How can I solve this problem?
@
QSettings mSettings("params.ini", QSettings::IniFormat);
mSettings.setIniCodec("ISO 8859-9");
QByteArray mList = mSettings.value("SerialNumbers/AliasList").toByteArray();
QString string = QString::fromUtf8(mList);
@Thanks advance for your helps
-
Thanks Galactik.
The problem has been solved by using QTextCodec::setCodecForCStrings.
-
I meet the similar issue, but i have chinese in ini file.
QT5 already remove QTextCodec::setCodecForCStrings.
Do you have some resolution?