Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/05/2004, 05:24
Axo
 
Fecha de Ingreso: abril-2003
Ubicación: Virtual
Mensajes: 953
Antigüedad: 21 años, 1 mes
Puntos: 7
Problema con Ficheros !

El problema es que no se muy bien como se usa fseek(). Tengo que leer un fichero y copiarlo en otro fichero pero inversamente.
Esto es lo que he progamado pero nada de nada... ¿dónde esta el fallo? :s

Código:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
main ()
{
FILE *fichero, *ficherocopia;
char ch;
long tamano,inicial,final;
char *contenido;

  	/* Abrimos el fichero datos.txt en modo lectura*/
	if((fichero=fopen("datos.txt","r"))==NULL)
   {
   printf("Error de lectura con el fichero");
   
   exit(0);
	}
   /*Abrimos el fichero datoscopia.txt en modo escritura*/
   if((ficherocopia=fopen("datoscopia.txt","w+"))==NULL)
   {
   printf("Error de escritura en el DATOS COPIA");

   exit(0);
   }

   inicial = ftell(fichero);
   printf("\n Posicion inicial: %d", inicial);

   fseek(fichero, 0L, SEEK_END);

   final = ftell(fichero);
   printf("\n Posicion final: %d", final);

 while(!feof(fichero))   // Recorremos hasta final de linea...
   {

   	ch=getc(fichero);  //leemos  y almacenamos
      printf("%c", ch);  // Imprimos en pantallas


      // Copiamos caracter a caracter
      if((putc(ch,ficherocopia))==EOF)
      {
      printf("Error de escritura");
      }
      
	}
   
     /*Cerramos ficheros*/
     fclose(fichero);
     fclose(ficherocopia);

getch();
}