QTプロジェクト日記-QSettingsを使用してインポートしたファイルが要求に合っているかどうかを区別します(接尾辞名を区別するのではありません)

1049 ワード

1.需要
デバイスによっては、ファイルをインポートするときに、ファイルがデバイスと一致するかどうかを区別する必要があります.
PS:デバイス番号は既に取得しており、直接使用可能です.
2.需要分析
通常、ファイルをインポートするときに区別する必要があるのはファイルの接尾辞名だけで、ファイルの内容は使用時にチェックします.
しかし、今回はファイルをインポートする過程で、ファイルの内容のチェックを行い、その中のフィールドを取得してデバイスタイプと一致させる必要があります.
PS:ファイル内容はキー値対タイプなので、QSettingsで解決できます.
3.実現プロセス
    
//       
QString file=QFileDialog::getOpenFileName(this,tr("title"),"./",".txt");
//  QSetting    
        QSettings setting(file,QSettings::IniFormat);
//     key flag        
        QString flag=setting.value("flag").toString().toLower();
//  ,                     ,           
        if(QSettings().value("FLAG").toString().toLower()!=flag){
            QMessageBox::information(this,tr("Tip"),tr("The file does not match the device"),tr("Ok"));
            return;
        }

この需要は複雑ではありません.主に自分の頭がずっと曲がっていません.
後でテキストタイプのファイルに遭遇し、いくつかのタイプのマッチングが必要な場合は、この形式でキー値ペアの形式で保存できます.
これにより、マッチングが必要な識別子を保存したり、主な内容を保存したりすることができます.