2017-06-05 34 views
-2

これはちょっと分かりにくいですが、データが入っている2種類の行を持つファイルを読み込んでいて、数字の後にコンマ。同じ開始桁の行を1行にマッチさせて出力する方法が必要です。どのように私は始めるだろうか?テキストファイル内で開始識別子が一致する行を一致させる

+1

std::map<std::string, std::string> data; std::string key, value; while (std::getline(infile, key, ',')) { std::getline(infile, value); data[key] += value; } 

その後(おそらく)あなたが値を書きたいと思います/ mcve)を使用してください。あなたの評判の量を持つ人はそれを理解する必要があります。 –

+0

@ArnavBorborah私はコードを求めていませんでした。申し訳ありませんが、もし私がそれを暗示すれば、私は簡単な擬似語やそれに近づく方法についての説明でさえ満足するでしょう。 – Annabelle

答えて

1

私は、各行をカンマの前のものとその後のものの2つの部分で読みます。

次に、カンマの前にある値をキーとして、残りをそれに関連付けられた値としてmap(またはunordered_map)にします。多分[、最小完全、かつ検証例](https://stackoverflow.com/helpを与えることによって

for (auto const &v : data) 
    std::cout << v.first << ":" << v.second << "\n"; 
+0

これは理にかなっています。アイデアをありがとう! – Annabelle

+0

私は 'v.dec'ではなく' v.second'を意味すると思いますか? –

+0

@ArnavBorborah:おっと、ええ。 –

関連する問題