Input/Output

di il
5 risposte

Input/Output

Buonasera,
Sono nuovo e ho cominciato da poco a programmare in C++, avendo in input il file txt scrittura composto da 10 righe e dovendo generare in output il file scrittura2.txt composto dalle prime 5 righe e il file scrittura3.txt composto dalle righe dalla sesta al decima, come impostereste il codice?

Grazie

5 Risposte

  • Re: Input/Output

    Come vuoi impostarlo?

    Apri il file in lettura e il primo file in scrittura e trasferisci le prime 5 righe, poi chiudi il file in scrittura e apri il secondo in scrittura e trasferisci le altre, alla fine chiudi il secondo file in scrittura e quello in lettura.
  • Re: Input/Output

    Esattamente cosi, come faccio a farlo?
  • Re: Input/Output

    Che vuol dire come faccio a farlo? Devi scrivere tu il codice, non io
  • Re: Input/Output

    Partiamo dalle basi, con questo codice apro il file scrittura.txt in lettura:
    
    #include <iostream>
    #include <string>
    #include <fstream>
    
    using namespace std;
    
    int main()
    {
        ifstream inputFile;
        inputFile.open("scrittura.txt");
        string data;
        if (inputFile.is_open())
        {
            while (!inputFile.eof())
            {
                inputFile>>data;
                cout<<data<<" ";
            }
            cout<<"\n";
            inputFile.close();
        }
        return 0;
    }
    
    questo è un esempio di apertura di file in scrittura (scrittura2.txt)
    
    #include <iostream>
    #include <string>
    #include <fstream>
    
    using namespace std;
    
    int main()
    {
        ofstream outputFile;
        outputFile.open("scrittura2.txt");
        string data;
        if (outputFile.is_open())
        {
            while (data.compare("exit")!=0)
            {
                cout<<"Digita il contenuto da inserire nel file di output, oppure 'exit' per terminare l'esecuzione\n";
                cin>>data;
                if (data.compare("exit")!=0)
                {
                    outputFile<<data<<" ";
                }
            }
            outputFile<<"\n";
            outputFile.close();
        }
        return 0;
    }
    
    partendo da questi due esempi, come trasferisco le prime 5 righe di scrittura.txt a scrittura2.txt?
  • Re: Input/Output

    Non puoi programmare prendendo pezzi di codice e facendo un miscuglio.

    Ragiona sul primo codice e conta le righe che leggi. Le prime 5 le scrivi nel primo file scrittura2 (che avrai aperto in precedenza), poi chiudi questo file e apri il fil scrittura3 e ci scrivi le righe da 6 a 10.

    Ti serve un contatore delle righe che stai leggendo e, in base al suo valore, all'interno del ciclo fai quello che ti ho descritto.
Devi accedere o registrarti per scrivere nel forum
5 risposte