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 è:
Dove è il bug che inserisce il ritorno a capo non voluto con la virgola???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; }![]()
Grazie
![]()


Rispondi quotando