在QT中,当BOM头不存在的时候,判断一个文件是否为UTF-8编码格式

xiaoxiao2021-02-28  79

  在QT中判断一个文件的字符编码格式,通常状况下,我们都可以根据文件BOM头来判断 下面是BOM头不存在的情况判断方式.   QTextCodec::ConverterState state; QTextCodec *codec = QTextCodec::codecForName("UTF-8"); // indata.setCodec(codec); // str = indata.readAll(); const QByteArray data = file->read(file->bytesAvailable()); const QString text = codec->toUnicode(data.constData(),data.size(),&state); if(state.invalidChars > 0){ //不是UTF-8格式的文件 qDebug() << "1"; }
转载请注明原文地址: https://www.6miu.com/read-75796.html

最新回复(0)