87,46,57,90,17
,
48,17,15,29,52
,
46,5,9,38,50
,
75,88,44,68,31
,
90,45,84,69,8
,
11,81,9,60,21
,
90,33,3,16,23
,
37,86,19,21,60
,
69,66,84,1,46
,
68,35,88,19,63
,
47,32,39,58,51
,
88,27,33,2,44
,
4,30,25,5,46
,
30,5,86,53,50
,
52,36,76,16,25
,
dovrebbe essere:
87,46,57,90,17,
48,17,15,29,52,
46,5,9,38,50,
75,88,44,68,31,
90,45,84,69,8,
11,81,9,60,21,
90,33,3,16,23,
37,86,19,21,60,
69,66,84,1,46,
68,35,88,19,63,
47,32,39,58,51,
88,27,33,2,44,
4,30,25,5,46,
30,5,86,53,50,
52,36,76,16,25,
il codice originante il file con l'errore è:
codice:
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
using namespace std;
#define LINEE 15
int main()
{
string line;
//ATTESA FILE DESIDERATO...
FILE *in;
do{
in=fopen("ESTRAZIONI.txt", "r");
if(in==NULL)
Sleep(1000);
}while(in==NULL);
//seguito
Sleep(1000);
//FINE ATTESA...
ifstream f;
f.open("ESTRAZIONI.txt", ios::binary);
int ri=0;
f.seekg(-1, ios::end);
char c;
f.get(c);
//APRO FILE CON LE ULTIME RIGHE CHE INTERESSANO
ofstream fout;
fout.open("ESTRAZIONI-ULTIME-15.txt");
//---------------------------------------------
while(ri<=LINEE)
{
if(c=='\n') ri++;
f.seekg(-2, ios::cur);
if(f.fail())
{
f.clear();
f.seekg(0, ios::beg);
break;
}
f.get(c);
}
getline(f, line);
getline(f, line);
while(!f.fail())
{
//RIMUOVO DA LINE GLI SPAZI e I RITORNI A CAPO
std::string astring(line);
std::remove(astring.begin(), astring.end(), ' ');
std::remove(astring.begin(), astring.end(), '\n');
//cout << line;
//cin.get();
//---------------------------------
//scrivo su file ogni linea rilevata
fout << line;
fout << ",";
fout << "\n";
//----------------------------------
cout << "*";
cout << line;
cout << "*";
cin.get();
getline(f, line);
//cin.get();
}
f.close();
//return 0;
}
Dove è il bug che inserisce il ritorno a capo non voluto con la virgola???

Grazie