IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

detruire un fichier


Sujet :

C

  1. #1
    Mau
    Mau est déconnecté
    Membre averti
    Inscrit en
    Avril 2002
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 15
    Par défaut detruire un fichier
    Bonjour,

    je cherche une fonction qui me permette d'effacer un fichier, existe t'il un équivalent de FILE fopen fclose

    du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    FILE*hello;
    hello=fopen("test.txt",w);
    fclose(hello);
     
    /*exemple : destroy(hello);//pour detruire le fichier sur le disque ?*/
    merci a plus...

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Service Delivery Manager
    Inscrit en
    Janvier 2003
    Messages
    2 885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Service Delivery Manager
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 885
    Par défaut
    Hi !

    Il me semble que la fonction unlink te fasse ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include <unistd.h>
     int unlink(const char *pathname);
    @ +++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 22
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #include <stdio.h>
    int remove(const char *path);

  4. #4
    Membre extrêmement actif

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Par défaut
    unlink c sous nux et remove sous win je crois bien

    Sous win tu as aussi DeleteFile

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 22
    Par défaut
    La MSDN me dit que remove c'est ANSI à moi.

  6. #6
    Membre extrêmement actif

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Par défaut
    je ne sais pas moi quand je suis sous linux j'utilise unlink et sous win remove

    Pourquoi ?
    parce que ca marche nickel comme ça

    sinon oui peut etre que remove marche sous linux, je n'ai jamais essayé et l'inverse unlink marche sous win ? je doute mais bon

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 21
    Par défaut
    personnellement je fais un fork dans lequel je fais un exec de "rm" sous linux...et ca marche evidemment tres bien .

  8. #8
    Membre extrêmement actif

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Par défaut
    oui y'a plein de façon de detruire un fchier c comme system("del fichier")

    mais si on peut faire du code portable ou ansi

    d'ailleurs code portable = code ansi ?

    Parce que si c'est ça si on a un programme qui doit creer un processus on est mal barré alors

    le createProcess marchera pas sous nux ainsi que le fork sous win

    donc ansi != portable ? c mon premier raisonnement pour dire que non

    Si y'en a qui connaisse bien le sujet et peuvent repondre se serait sympa

  9. #9
    Membre émérite
    Avatar de Elijha
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Avril 2003
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2003
    Messages : 314
    Par défaut
    Salut
    Citation Envoyé par Viquel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #include <stdio.h>
    int remove(const char *path);
    Juste pour remarque, apparament la fonction remove ne serait qu'une macro qui utilise la fonction unlink.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #include <stdio.h>
    int unlink(const char *path) ;
     
    #define remove(path)        unlink(path)
    A prendre avec des pincettes car avec la foulltitude de compilateurs....

    Bye...

  10. #10
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 190
    Par défaut
    J'utilise unlink sous Borland Turbo C++3 sous Dos et ça fonctionne très bien.

  11. #11
    Expert éminent

    Avatar de Anomaly
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 380
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par hegros
    d'ailleurs code portable = code ansi ?
    Pas nécessairement. Ça dépend à quel point tu veux être portable. Le code ANSI et l'utilisation uniquement des fonctions ANSI te garantit le fonctionnement sur tous les compilateurs C (ANSI). Mais il y a POSIX, une norme pour tous les Unix (unlink en fait partie). Mais Win32 n'est pas compatible avec cette norme

    Pour la création de processus, c'est simple il n'y a aucune fonction ANSI pour le faire : après tous, tous les systèmes existants n'ont pas la notion de processus. fork() fait partie de POSIX cependant.

  12. #12
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2002
    Messages : 290
    Par défaut
    Citation Envoyé par Elijha
    Salut
    Citation Envoyé par Viquel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #include <stdio.h>
    int remove(const char *path);
    Juste pour remarque, apparament la fonction remove ne serait qu'une macro qui utilise la fonction unlink.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #include <stdio.h>
    int unlink(const char *path) ;
     
    #define remove(path)        unlink(path)
    A prendre avec des pincettes car avec la foulltitude de compilateurs....

    Bye...
    selon sun :

    For files, remove() is identical to unlink(). For directories, remove() is identical to rmdir().
    selon Linux
    Under libc4 and libc5, remove was an alias for unlink (and hence would not remove directories).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [batch file] detruire des fichiers dans une arborescence
    Par Biosox dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 03/06/2008, 10h10
  2. fichier mappé en mémoire
    Par WinBernardo dans le forum Delphi
    Réponses: 7
    Dernier message: 01/12/2006, 09h38
  3. detruire une chaine dans un fichier texte
    Par rober dans le forum VB 6 et antérieur
    Réponses: 13
    Dernier message: 08/11/2006, 09h27
  4. Réponses: 4
    Dernier message: 20/06/2006, 09h18
  5. Lire 1 bit d'un fichier en C
    Par Anonymous dans le forum C
    Réponses: 3
    Dernier message: 23/05/2002, 18h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo