PDA

Visualizza la versione completa : [C++]I/O su file


favexxx
22-05-2008, 20:50
Salve a tutti! Grazie alla vostra esperienza in passato sono riuscito a passare molte difficoltà
per cui vorrei porvi un altro quesito che nn riesco a risolvere...

fstream file;

//codice vario

file << stringa; //scrivo il contenuto della stringa nel file di testo

ora,se io volessi andare a capo dentro il file .txt e continuare a scrivere sotto
cm faccio? Qualche idea?

grazie mille in anticipo!!

:ciauz:

oregon
22-05-2008, 20:53
file << stringa << endl;

favexxx
22-05-2008, 20:55
già provato!! proprio nn va...

se guardo sul file di testo mi mette solo uno 0(zero) a fine stringa ma effettivamente nn va a capo.... :cry:

favexxx
22-05-2008, 20:59
se vi può essere di aiuto questo è il codice:

#include <iostream.h>
#include <fstream.h>
#include <string.h>
using namespace std;
struct alunno{
char nome[15];
char cognome[15];
int ita;
int inf;};
alunno v[2];
int main ()
{
fstream file;
char stringa[20]="ciao mondo";
char stringa1[50];
file.open("file.txt",ios::out | ios::binary);
if(!file){
cout << "I/O ERROR" << endl;
system("pause");
exit(1);}
else
file << stringa << endl;
file << stringa << endl;
file.close();
file.open("file.txt", ios::in | ios::binary);
while(!file.eof()){
file >> stringa1;
cout << stringa1;}
file.close();
system("pause");
return 0;
}

oregon
22-05-2008, 21:16
Un file di testo non deve essere trattato come un file binario ... quindi non devi usare ios::binary

favexxx
22-05-2008, 21:30
ah..ok!!

e che devo mettere al suo posto?

scusa per la domanda troppo cretina ma ho un prof abbastanza problematico...

:berto:

MItaly
22-05-2008, 21:37
Limitati a non metterlo.


file.open("file.txt",ios::out);

favexxx
22-05-2008, 21:40
grazie mille

cmq nn mi è chiara la frase "limitati a non metterlo"

:ciauz: a tutti!

MItaly
22-05-2008, 21:54
Originariamente inviato da oregon
quindi non devi usare ios::binary

Originariamente inviato da favexxx
e che devo mettere al suo posto?


Originariamente inviato da MItaly
Limitati a non metterlo.

=> Non lo devi sostituire con nient'altro, basta non metterlo e lasciare solo ios::out.
Così è più chiaro? :)

oregon
22-05-2008, 21:54
Cosa c'e' di "non chiaro" in quella frase? :confused:

Non scrivere ios::binary cosi' il file non sara' binario ma di tipo testo ... :madai!?:

Loading