Fstream difficoltà

di il
2 risposte

Fstream difficoltà

Ciao ragazzi ho bisogno del vostro prezioso aiuto!
sto studiando da solo c++, ho comprato i due libri di Deitel.
andando avanti mi sono imbattuto in un mio problema, sto creando una piccola applicazione chiamata miniregistro.
oltre alle varie nozioni che ho imparato fino ad adesso volevo aggiungere una piccola idea.
in questa applicazione si tratta di inserire una data, poi inserire una verifica (materia + voto) in un array globale.
questo array ad ogni sessione lo salvo su un file di testo con fstream;
ho inserito nel menu le 'opzioni di salva su file e carica da file.
come faccio alla prossima sessione ad andare avanti sul mio file e non ricrearlo da capo? cioè pensavo di partire dalla prima riga vuota o non lo so.. ditemi voi se avete idee. piano piano sto andando avanti sono ancora all'inizio ragazzi scusate la mia ignoranza e intanto vi ringrazio per il vostro aiuto.
la parte per caricare il file ce l'ho in mente più o meno ma questa ho difficoltà.


//salvasufile_inmenu.h
//sottosezione di mini_registrosalv.cpp

#include <iomanip>
#include <fstream>

using namespace std;

class SalvaSuFile
{
public:
	void salvasufile()
	{
		
		string scritta = "";
		ofstream OutFile; /* Dichiarazione di tipo */
		OutFile.open("C://Users/giaco/Desktop/prove_cpp/MINI_REGISTROSALV/mini_registrosalv/Debug/verificheinserite.dat"); 
		if (!OutFile)
		{
			cout << "Error di apertura del file" << endl; /* controllo */
		}
		else
		{
			for (int i = 0; i < contatorearrayverifiche; i++)
			{
				scritta = arrayverificheinserite[i];
				OutFile << scritta << endl; 
				
			}
			OutFile.close(); /* chiusura file */
		}
		
	}
};
in auesto modo ad ogni sessione mi crea il file o lo sovrascrive. come faccio ad andare avanti sul mio file e non ricrearlo da capo?

2 Risposte

  • Re: Fstream difficoltà

    Un ofstream puoi aprirlo in append (per aggiungere i dati a partire dalla fine del file)

    Outfile.open ("tuofile", std::ofstream::app);
  • Re: Fstream difficoltà

    Ok grazie mille tra poco provo!!
    Grazie ancora
Devi accedere o registrarti per scrivere nel forum
2 risposte