std:: string is a template specialization of std:: basic_string<T>, with T being "char". If you want conversion of non-ASCII characters, you need to use std:: wstring (which is the basic_string specialization that uses wchar_t). The QString conversion is QString::toStdWString().