タイトルの通りです。
今回使う配列にはIDとして数字が入ってますが、文字列[string]型になってます。
そして、IDは二つあり、「一年三組」のような形になってます。
前提手順
1 二次元配列testとして、csvファイルを受け取ります。
std::vector<std::vector<std::string>> test= "csvファイルを配列で受け取る関数";
手順
1 まずはtestから、該当項目を数字に戻した二次元配列stestを作ります
//一行分を格納するための配列
std::vector<int> stest_c;
std::vector<std::vector<int>> stest;
for (int i =0;i<test.size();i++){
stest_c.push_back(test.at(i).at(0));
stest_c.push_back(test.at(i).at(1));
stest.push_back(std::move(stest_c));
}
2 作った配列stestをソートします
std::sort(stest.begin(), stest.end());
****なぜかこれだけで、1-1 1-2 1-3 と、下の項目もちゃんとソートされてます**
3 あとは元のtestとfor文とif文で比べて入れ替えるだけです
以上です、夕飯を買いに行くため後半は駆け足になりました。補足あれば追記します。
Comments