PDA

View Full Version : [c++] Come ridirezionare l'output su file


shang84
07-11-2005, 12:13
Ciao a tutti,

vorrei fare un ciclo in cui di volta in volta riderizionare l'output su file dopo averlo ogni volta aperto in modalità append.

Al termine di ciascuna iterazione del ciclo il file sarà chiuso.

Al termine del ciclo invece l'output dovrà essere nuovamente su monitor.

Ho provato con dup2 ma non mi riesce bene. Infatti una volta "duppato" l'output su monitor mi rimane sempre su file.

Cosa potrei fare?

Grazie

Ecco parte del codice:

for(int i=0;i<10;i++){
//cout << "Questo lo displaya una sola volta: " << i << endl;

int fd;
fd=open("prova.txt",O_WRONLY|O_APPEND|O_CREAT);
dup2(fd,1);
cout << "questo va su file " << endl;
chmod(argv[1],S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH);
close(fd);
close(1);
//we have wrote the results
delete spectras[i];

}
cout << "questo va su file ma nn andrebbe!!!" << endl;

ilsensine
07-11-2005, 12:18
http://www.hwupgrade.it/forum/showthread.php?t=1057497