Salve a tutti!
Ho la necessità di leggere da un file e successivamente riscrevere quanto letto in un altro file.
Ho provato quindi a scrivere il seguente codice:
#include <stdio.h>
#define HOSTFILE "/root/Desktop/test.txt"
#define MYHOST "/root/Desktop/mio.txt"
main(){
FILE * fp;
FILE * fp2;
char lettura;
fp = fopen(HOSTFILE,"r");
if (!fp) {
printf ("Impossibile aprire il file in lettura.");
return;
}
else {
fp2 = fopen(MYHOST,"w");
if (!fp2) {
printf ("Impossibile aprire il file in lettura.");
return; }
else{
while ((fscanf (fp, "%c",&lettura)) > 0){
fprintf (fp2, "%c", &lettura);
printf ("%c", lettura);
}
}
printf ("Eccoci a fine ciclo");
fclose(fp2);
fclose(fp);
}
}
Purtroppo però, nonostante il file venga letto correttamente ed il contenuto stampato a schermo, non viene poi però scritto all'interno del secondo file, o meglio vengono scritti caratteri incomprensibili (piccoli rombi).
Non mi smebra vi sia alcun errore nel codice, ma a quanto pare c'è.
Come posso riparare il problema?
Confido in voi,
grazie dell'aiuto