Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Suppression de fichier [ Divers / Général ] (angelfire0808)

jeudi 8 juin 2006 à 15:40:18 | Suppression de fichier

angelfire0808

J'ai un programme dans lequel je dois supprimer un fichier.Le probleme c'est qu'il ne se supprime pas toujours. Quelles sont les conditions pour qu'un fichier ne puisse etre supprimé ?
Merci d'avance.

PS : Suppression testée avec "unlink" et "remove"


void chargement_du_telephone(pt_cellule *tete,char numero_tel[],rep *repertoire,int index_telephone[])
{
     FILE* fichier = NULL;
     char num_select[25]; /* utilisé pour la lecture du fichier de SMS */
     int nb_sms_en_memoire = 0 ;
     int i =0;
     char telephone_temp[11];
     char nom_temp[25];
     /* Il faut faire un controle pour savoir si on peut ajouter des sms dans la memoire
      Si c'est une actualisation est que le nombre de SMS dans la liste depasse 50 SMS
      alors on ne peut les ajouter pour l'instant */

     
     if(( nb_sms_en_memoire = compteur_nb_sms(tete)) < MAX_SMS)
     
     {
            /* Il faut dans un permier temps charger les SMS dans la liste chainée venant du fichier memoireSMS_numtel.txt : */
            sprintf(num_select, "memoireSMS_%s.txt",numero_tel); /* On crée le fichier avec le numero de telephone */
            /* num_select represente le nom du fichier */
            OUVERTURE_fichier(tete,num_select);
           
             /* Ensuite on ajoute les SMS reçu :  */       
            sprintf(num_select, "%s.txt",numero_tel); /* On crée le fichier avec le numero de telephone  */     
            OUVERTURE_fichier(tete,num_select);
       
     }
    /* Sinon cela signifie qu'il n'y a plus de place en memoire actuellement */
    else
    {
         printf("\nVous n'avez plus de place pour recevoir de nouveaux SMS");
         printf("\n Veuillez en supprimer");
    } 

           
/* Maintenant on va charger le reperoire */
sprintf(num_select, "memoire_repertoire_%s.txt",numero_tel); /* On crée le fichier avec le numero de telephone  */     
fichier = fopen(num_select, "r")
if((fichier != NULL) && (!fichier_VIDE(num_select)))
   {           
            while(!feof(fichier))/* tant qu'on arrive pas à la fin du fichier */
                 {
                    fscanf(fichier,"\r%[^\\]\\ %s\n",telephone_temp,nom_temp)
                   
                    ajout(repertoire,index_telephone,telephone_temp,nom_temp)/*on s'occupe du tableau d'index */
                    repertoire->dernier++;         
                 }

fclose(fichier);
   }
SUPPRIMER_fichier(num_select);

}

void SUPPRIMER_fichier(char num_select[])
{
 remove(num_select); /*On supprime le fichier */
 system("PAUSE");
 

}

jeudi 8 juin 2006 à 17:40:18 | Re : Suppression de fichier

angelfire0808

Si j'enleve la ligne : (!fichier_VIDE(num_select)) ca fonctionne, mais j'en ai besoin , alors comment faire? :-°

Code : C
int fichier_VIDE(char num_select[])
{
    int VIDE = 0 ; /* le fichier est considéré comme plein par défaut */
    FILE* fichier = NULL;
       
    fichier = fopen(num_select, "r");

          fseek(fichier,0,SEEK_END);
          if(ftell(fichier) == 0) 
             {
             VIDE = 1 ; /* le fichier est vide */
             }
     fclose(fichier)
return(VIDE);
}

jeudi 8 juin 2006 à 21:52:30 | Re : Suppression de fichier

laurent1024

fichier = fopen(num_select, "r");
if ((fichier != NULL) && (!fichier_VIDE(num_select)))
{          
    while(!feof(fichier)) /* tant qu'on arrive pas à la fin du fichier */
    {
        fscanf(fichier,"\r%[^\\]\\ %s\n",telephone_temp,nom_temp);
        ajout(repertoire,index_telephone,telephone_temp,nom_temp);  /*on s'occupe du tableau d'index */
        repertoire->dernier++;        
    }
    fclose(fichier);
    SUPPRIMER_fichier(num_select);
}
SUPPRIMER_fichier(num_select);

Dans ton code initial, si le fichier c'est ouvert (fichier != NULL), mais que ton fichier est vide, tu ne rentre pas dans la condition. Et donc le flux de fichier n'est pas fermé c'est peut etre pour ca que la suppression ne marche pas.

++



Cette discussion est classé dans : fichier, sms, select, num, telephone


Répondre à ce message

Sujets en rapport avec ce message

Informations pour l'utilisation des fichiers en C [ par angelfire0808 ] J'ai un fichier avec comme contenu : test 556565 autre test 1762167 ..... je souhaite mettre ce contenu dans ma liste chainée mais ça bloque PB avec la gestion de fichier dans une de mes fonctions!!!! [ par kobee12 ] J'ai cree deux fonctions qui me permettent de charger et d'enregistrer dans un fichier selon l'ecriture dans le fichier de la maniere suivante : jour Pb de copie de fichier/taille de structure [ par wannie ] Salut tt le monde. Quelqu'un pourrai tester mon prog est me dire si ça fonctionne. Moi je comprend pas j'ai une copie d'un caractère dans chaque ligne connexion modem-telephone lecture fichier son [ par sena ] Salutj'effectue par soft une connecxion et deconnexion entre deux modem. Je pense donc que je peux faire la meme chose en contactant un telephone et n information fprintf [ par angelfire0808 ] Quand j'ecrie dans mon fichier avec la commande:  fprintf(fichier, "%s;%d", sms_a_envoyer,num_send);&nb modem [ par grekers ] bonjour j effectu un appelle avec mon modem vers un telephone et je voudrais savoir comment faire pour quand je decroche le telephone ca me lance un f écriture dans un fichier en C [ par Trinity_vv ] <TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 UNSELECTAB recuperer des fichier d'un serveur ftp [ par cobra176 ] j'ai creer un programme de recherche pour fichier log mais maintenant je dois les récuperer sur un serveur ftp et je n'es jamais vu comment utiliser u [MFC] Pb avec MoveFileEx [ par philistase ] Bonjour je demande à l'utilisateur de rentrer le chemin d'un fichier à déplacer que je met ds une variable d'un EditBox:m_chemsourc et le chemin d'un Sauvegarder un même fichier dans 2 dossiers differents [ par Toto_15l ] Bonjour à tous !! Je débute tout juste en programmation C mais là c'est un tout autre probleme que je ne sais pas où poster  ! Comment créer une macro


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,187 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.