Преобразование std:: string в QString



у меня есть std::string content что я знаю, содержит данные UTF-8. Я хочу преобразовать его в QString. Как мне это сделать, избегая преобразования из-ASCII в Qt?

1236   3  

3 ответов:

здесь

QString::fromStdString(content) лучше, так как он более прочный. Также обратите внимание, что если std::string кодируется в UTF-8, то он должен дать точно такой же результат как QString::fromUtf8(content.data(), int(content.size())).

как правило, лучший способ сделать преобразование с помощью метода fromUtf8, но проблема в том, когда у вас есть строки, зависящие от локали.

в этих случаях предпочтительнее использовать fromLocal8Bit. Пример:

std::string str = "ëxample";
QString qs = QString::fromLocal8Bit(str.c_str());

Comments

    Ничего не найдено.