rai002 @ ウィキ
データのソートおよび重複ファイルの間引き&重要度付け
最終更新:
rai002
-
view
//**********************************************************************
// データのソートおよび重複ファイルの間引き&重要度付け
// 重要度:
// クイックランチャー:3
// ディスクトップ:2
// その他:1(デフォルト)
// ファイル重複時:重要度を加算して削除
//**********************************************************************
void get_dir::Set_All_data()
{
DATA temp;
bool flag;
int count=0;
//クイックランチャーに含まれるもの追加
for(int i=0; i<(int)quick_data.size(); i++) {
temp = get_FileToTime( quick_data.at(i) );
temp.importance = 3;
all_data.push_back( temp );
}
//ディスクトップ
for(int i=0; i<(int)desk_dir_data.size(); i++) {
flag = true;
//重複しないための検査
for(int j=0; j<(int)all_data.size(); j++){
if( all_data.at(j).Comparison( desk_dir_data.at(i) ) ){
flag = false;
count++;
break;
}
}
if( flag ){
temp = get_FileToTime( desk_dir_data.at(i) );
temp.importance = 3;
all_data.push_back( temp );
}
}
//マイドキュメント
for(int i=0; i<(int)docu_dir_data.size(); i++) {
flag = true;
//重複しないための検査
for(int j=0; j<(int)all_data.size(); j++){
if( all_data.at(j).Comparison( docu_dir_data.at(i) ) ){
flag = false;
count++;
break;
}
}
if( flag ){
temp = get_FileToTime( docu_dir_data.at(i) );
temp.importance = 3;
all_data.push_back( temp );
}
}
//全フォルダ
for(int i=0; i<(int)data.size(); i++) {
flag = true;
//重複しないための検査
for(int j=0; j<(int)all_data.size(); j++){
if( all_data.at(j).Comparison( data.at(i).directory ) ){
flag = false;
count++;
break;
}
}
if( flag ){
all_data.push_back( data.at(i) );
}
}
cout << "Set_All_data:超複数:" << count <<"個" << endl;
cout << "Set_All_data:全個数:" << (int)all_data.size() <<"個" << endl;
}