私はテキストファイルにあるものを読み込んだ後、ベクトルの2つの要素の間で場所を入れ替えるプログラムを作成しようとしています。ベクターの問題、少し手が多分?
テキストファイルは、この順序を持っている:私はちょうど第一及び第二の間の場所を変更する必要があることを把握NAME SURNAME REGISTRATION_NUMBERとCITY_ADRESS 、多分100人のリストです...順序は同じであるので私は2を増やすので、最初の名前にもう一度行きます...しかし、それは私の最大の問題ではありません...
私はgetlineを使うと、ベクトル魔女の最初の要素のすべてが奇妙で、そのため私は名前の場所を変更することはできません。私はそれを変更する方法を理解できません...私はそれがスペースを発生すると、要素を変更するようにしたいと思います。
私が得ることができるすべての援助に感謝します。
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
using namespace std;
int main() {
vector<string> line;
string information;
ifstream myfile ("Namn.txt");
if (myfile.is_open()) {
while (getline(myfile, information)) {
line.push_back (information);
}
myfile.close();
}else cout << "Filen gick inte att öppna!";
for (unsigned int i = 0; i < line.size(); i++) {
cout << line[i] << endl;
}
return 0;
}
[ 'std名前空間を使用して;'悪い習慣である](https://stackoverflow.com/q/1452721/2176813)、それを使用することはありません。 – tambre
私は実際にそれを使用しないことを知っているが、それは私が今持っている最大の問題ではない:)最後に変更することができます。 –
はすべてテキストファイルの1行にあるフィールドですか?そうであれば、新しい行にそれぞれのフィールドを入れ、2人の別々の人を分ける余分な行を付けたり、行全体を読んで手動でベクトルに分けたりすることができます。 –