It's a problem of qDebug(), not of QString. The QString handles Unicode correctly. The literals like "Texte en français" will be Unicode "Texte en français" in QString. The "Texte en fran\u00C7ais" will not work in QString, the QString does not know the "\unnnn" escapes and will put "\unnnn" in the QString instead of "nnnn" converted to int.
qDebug() seems to use code pages internally even if the operating system is Unicode (like Linux).
Bookmarks