私が抱えている問題は、テキストファイルを作成し、一度テキストに書き込むことができるということです。新しいファイルを作成せずに、必要に応じて行を追加できるようにしたい。私の次の問題は、私が探している出力を取得できないように見えることです。例えば。テキストファイルに含まれる
start1
fname | lname | ssn
end1
私の目的は、start1とend1内のデータのみを取得し、区切り文字|なしでfnamelnameとssnを返すことです。これが私のコードです
int main()
{
fstream filestr;
string line;
filestr.open ("file.txt", fstream::in | fstream::out | fstream::app);
if(!filestr.is_open())
{
cout << "Input file connection failed.\n";
exit(1);
}
else{
filestr<<"Start2\n";
filestr<< "middle|middle"<<endl;
filestr<<"end2"<<endl;
if(filestr.good()){
while(getline(filestr, line) && line !="end1"){
if(line !="Start1"){
//below this point the output goes screwy
while(getline(filestr, line,'|')){
cout<<"\n"<<line;
}
}
}
}
filestr.close();
}