Tengo un std::string content
que sé que contiene datos UTF-8. Quiero convertirlo a QString
. ¿Cómo hago eso, evitando la conversión from-ASCII en Qt?Convertir std :: string en QString
51
A
Respuesta
66
Hay una función llamada QString
fromUtf8
que toma un const char*
:
QString str = QString::fromUtf8(content.c_str());
47
QString::fromStdString(content)
funciona bien también. Debería dar exactamente el mismo resultado que devuelve fromUtf8(content.data(), int(content.size()))
.
+2
Solo en Qt5. En Qt4 usa QString :: fromAscii. –
4
Por lo general, la mejor manera de realizar la conversión es usar el método fromUtf8, pero el problema es cuando tienes cadenas dependientes de la configuración regional.
En estos casos, es preferible usar fromLocal8Bit. Ejemplo:
std::string str = "ëxample";
QString qs = QString::fromLocal8Bit(str.c_str());
Cuestiones relacionadas
- 1. cómo convertir std :: string a QString
- 2. Cómo convertir QString a std :: string?
- 3. ventaja de QString en std :: string
- 4. Uso de std :: string y QString indistintamente
- 5. Cómo convertir System :: String^en std :: string?
- 6. convertir int a std :: string
- 7. convertir std :: string a basic_ostream?
- 8. Convertir flotador para std :: string en C++
- 9. Cómo convertir std :: string a LPCSTR?
- 10. Cómo convertir std :: string a const char *?
- 11. Cómo convertir std :: string a NSString?
- 12. Cómo convertir CString y :: std :: string :: std :: wstring entre sí?
- 13. std :: string :: longitud() vs. std :: string :: size()
- 14. Cómo convertir int a QString?
- 15. Cómo convertir caracteres sin signo * a std :: string en C++?
- 16. Quiero convertir std :: string en un const wchar_t *
- 17. Cómo convertir std :: string a LPCWSTR en C++ (Unicode)
- 18. Forma correcta de convertir sin pérdida ay de std :: string y QByteArray
- 19. no se puede convertir de 'std :: string' a 'LPSTR'
- 20. SWIG: Cómo ajustar std :: string & (std :: string pasado por referencia)
- 21. C++ std :: string to boolean
- 22. Convierte uint64_t en std :: string
- 23. std :: string vs. char *
- 24. operator std :: string() const?
- 25. Conversión de std :: wstring a QString lanza error de vinculador
- 26. Rendimiento std :: strstr vs std :: string :: encontrar
- 27. Convertir std :: cadena en entero
- 28. std :: vector <std::string> crash
- 29. Conversión de std :: string a bool
- 30. std :: array <char, N> std :: string
Ah, lo pasé por alto. ¡Gracias! –
Más eficiente: 'QString :: fromUtf8 (content.data(), content.size())' –