반응형
std :: string을 QString으로 변환
내가 std::string content
알고있는 UTF-8 데이터가 있습니다. 나는 그것을 QString
. Qt에서 from-ASCII 변환을 피하면서 어떻게해야합니까?
다음 을 취하는 QString
함수 fromUtf8
가 있습니다 const char*
.
QString str = QString::fromUtf8(content.c_str());
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());
이후 Qt5 fromStdString 내부적 fromUtf8를 사용하는, 그래서 당신은 모두 사용할 수 있습니다 :
inline QString QString::fromStdString(const std::string& s)
{
return fromUtf8(s.data(), int(s.size()));
}
참고 URL : https://stackoverflow.com/questions/4338067/convert-stdstring-to-qstring
반응형
'programing' 카테고리의 다른 글
2 차원 배열을 만들고 Ruby에서 하위 배열에 액세스 (0) | 2020.11.13 |
---|---|
iPhone의 최소 버튼 크기 (0) | 2020.11.13 |
Hibernate Criteria vs HQL : 어느 것이 더 빠릅니까? (0) | 2020.11.13 |
CommonJS는 무엇이며 .js 애플리케이션을 작성하는 데 도움이 될 수있는 이유는 무엇입니까? (0) | 2020.11.12 |
프로젝트를 다른 프로젝트의 종속성으로 추가하려면 어떻게합니까? (0) | 2020.11.12 |