Deplacer un fichier dans un repertoire en langage c sur linux
Résolu
usher105
Messages postés
13
Statut
Membre
-
usher105 Messages postés 13 Statut Membre -
usher105 Messages postés 13 Statut Membre -
Bonjour à tous, s'il vous plait j'essaye depuis 2 jours à deplacer un fichier dans un dossier avec la fonction rename en sur ubuntu sans succès. voila ma fonction:
Sa m'affiche a chaque fois echec de deplacement.
Merci de m'aider
void deplace(char* nom_fichier, char* nom_dossier)
{
FILE *fichier = NULL;
DIR *repertoire = NULL;
fichier = fopen(nom_fichier,"r");
if((fichier == NULL)&&(errno == ENOENT))
{
printf("le fichier %s n\'existe pas\n",nom_fichier);
}
else
{
repertoire = opendir(nom_dossier);
if((repertoire == NULL)&&(errno == ENOENT))
{
printf("Le repertoire %s n\'existe pas\n",nom_dossier);
}
else
{
fclose(fichier);
closedir(repertoire);
//Deplacement du fichier dans le repertoire
if(rename(nom_fichier, nom_dossier) == 0)
printf("fichier %s deplace avec succe\n",nom_fichier);
else
printf("Echec de deplacement\n");
}
}
}
Sa m'affiche a chaque fois echec de deplacement.
Merci de m'aider
A voir également:
- Deplacer un fichier dans un repertoire en langage c sur linux
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier bin - Guide
- Déplacer colonne excel - Guide
- Fichier rar - Guide
1 réponse
Ben tu renommes ton fichier en répertoire...
Il faut indiquer le nom du fichier source et la destination : rename(source, destination).
Donc grosso modo, il faut que tu mettes en 2nd argument : nom_dossier/nom_fichier.
Tu peux te créer une variable suffisamment grande, copier nom_dossier dedans avec strcpy() puis concaténer avec nom_fichier (strcat()).
Pense bien à vérifier qu'il y a bien le '/'.
Cdlt,
Il faut indiquer le nom du fichier source et la destination : rename(source, destination).
Donc grosso modo, il faut que tu mettes en 2nd argument : nom_dossier/nom_fichier.
Tu peux te créer une variable suffisamment grande, copier nom_dossier dedans avec strcpy() puis concaténer avec nom_fichier (strcat()).
Pense bien à vérifier qu'il y a bien le '/'.
Cdlt,
usher105
Messages postés
13
Statut
Membre
merci fiddy probleme resolu