Qt는 TXT 파일을 읽어, GBK 및 UTF-8 인코딩 분석

TXT 파일을 읽을 때, 종종 인코딩 된 파일 형식을 얻을 수 없습니다. 직접 사용하는 경우가 왜곡 될 수 있습니다. 당신은 유니 코드 (Qt는 기본 인코딩 형식)를 사용하기 전에 변환 할 필요가있다.

실제 코딩 형식은 매우 입력하지만, GBK 및 UTF-8 일반적인 주요 사용의 두 가지 종류가 있지만. 변환이 포맷의 종류 아닌 잘못된 문자 인코딩으로 간주되는 경우, 변환을 설정하는 시도 할 수 있습니다.

QString MainWindow를 :: GetCorrectUnicode (const를 QByteArray & 바) 
{ 
    QTextCodec :: ConverterState 상태; 
    QTextCodec * 코덱 QTextCodec :: = codecForName ( "UTF-8"); 
    QString 텍스트 = codec->의 ToUnicode (ba.constData () ba.size (), 주); 
    경우 (state.invalidChars> 0) 
    { 
        텍스트 = QTextCodec :: codecForName ( "GBK") ->의 ToUnicode (BA); 
    } 
    다른 
    { 
        텍스트 = 바; 
    } 
    텍스트를 반환; 
}

추천

출처www.cnblogs.com/mtn007/p/11762572.html