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;
}
 
 
ウィキ募集バナー