Ciao io dovrei rindirizzare i risultati del comando system()su file. La soluzione sembrava essere ridirigere lo stdout con la freopen(.,.,.) ma la cosa nn funziona... avete qualche idea di come possa fare??
Ciao io dovrei rindirizzare i risultati del comando system()su file. La soluzione sembrava essere ridirigere lo stdout con la freopen(.,.,.) ma la cosa nn funziona... avete qualche idea di come possa fare??
PER ESEMPIO:
system("TYPE file_origine.txt >> file_destinazione.txt");
/*
redirige l'output (cioè il contenuto di file_origine
in file_destinazione, invece che nello stdout, cioè il video).
*/
...Terrible warlords, good warlords, and an english song
:mavieni:
ottimo funziona!!
cmq mi rimarra sempre il dubbio del perche' con la freopen l'uscita della system nn veniva rindirizzata..
Che e` uguale a:codice:fclose( stdout ); stdout = fopen( "tuo_output", "w+" ); system( "programma" );
codice:stdout = freopen( "tuo_output", "w+", stdout ); system( "programma" );
Io ho provato la seconda soluzione (quella con freopen)ma nn va!!!
con la stdout= davanti mi da errore e senza mi rindirizza i printf ma il comando system va su video...
All`inizio non convinceva neanche me l`idea che anche con system() andasse invece di exec*(), pero` ripensandoci i descrittori dovrebbero essere ereditati dal processo padre. Che intendi per:
???con la stdout= davanti mi da errore
D`altra parte se non fai l`assegnazione e` normale che l`output non venga redirezionato. :quipy:
cosa intendi per exec*();
cmq intendevo dire che ho provato stdout = freopen() e mi da errore su stdout = mentre se nn lo metto mi reidirizza lo stdout per le printf ma non per la system...
Allora fopen e fropen restituiscono un puntatore a FILE se tu scrivi stdout=fopen ecc
stdout ricevera il valore restituito da fopen o freopen. E' un reindirizzamento.
Giusto o ho detto qualke caxxata r0x?
Ah per exec non so dirti forse è una funzione C++. Io non la conosco!!!
CIao
questo :quote: e' quello che pensavo anch'io ma mi da errore... quindi c'e qualcosa che nn va!!!!!!!!!!!!!!!!!!!!!!!!!!!:sexpulp: