Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/04/2014, 12:00
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 12 años, 6 meses
Puntos: 83
Respuesta: Error al eliminar fichero 0 bytes

Puedes recuperar el tamaño del archivo y comprovar lo que ocupa:

Código C:
Ver original
  1. FILE *arx;
  2. size_t fs;
  3.  
  4. //abres manejador
  5. if(!(arx = fopen(ruta, "r"))) {
  6.     //error de acceso
  7. }
  8. else {
  9.     //mueves el puntero al final
  10.     fseek(arx, 0L, SEEK_END);
  11.    
  12.     //obtienes posicion del puntero (posicion final = tamaño)
  13.     if(ftell(arx) == 0) {
  14.         //archivo de 0 bytes, cierras y eliminas
  15.         fclose(arx);
  16.         if(remove(ruta)) {
  17.             //error en eliminar
  18.         }
  19.         else {
  20.             //archivo eliminado
  21.         }
  22.     }
  23.     else {
  24.         //restauras puntero
  25.         fseek(arx, 0L, SEEK_SET);
  26.        
  27.         //ahora puedes trabajar con el archivo, al final lo cierras
  28.         fclose(arx);
  29.     }
  30. }


Espero que te sirva
Saludos
vosk