Pour une meilleure compréhension du problème veuillez ouvrir les pièces jointes, afin de bénéficier des exemples en couleur et des schémas très utiles à la compréhension de la demande.
Bonjour,
Je souhaiterai créer un programme de transfert automatique de fichier d’une clé usb à un serveur avec pour contrainte principal le respect d’une arborescence bien précise dans le serveur.
A noter que le nom du fichier a été créé pour qu’il détermine à lui tout seul la destination finale de la copie de ce fichier dans l’arborescence du serveur.
Le programme devra donc dans un premier temps « scanner » le nom du fichier, selon des règles bien précises, il va déterminer point par point le chemin d’accès et le copier au bon endroit dans le serveur.
Voici un fichier avec les caractéristiques particulières qui permettront de déterminer son emplacement final.
Exemple : HYA_20080911_140000.tc (cf pièces jointes)
HYA = nom
2008 = année
09 = mois
tc = extension correspondant à un fichier de type temps comtinu (tc)
Il y a deux extensions posibles : tc et bc qui correspondent à des dossiers de l’arborescence du serveur présenté ci-dessous.
Voici l’arborescence du serveur. (cf pièces jointes)
(cf : voir le pdf en pièce jointe pour un chéma en couleur)
Comme vous pouvez le constater l’extension du fichier déterminera si l’on emprunte le chemin C:\SERVEUR1\billet\continu pour l’extension « *.bc » ou C:\SERVEUR1\temps\continu pour l’extension « *.tc »
Ensuite il faudra « scanner » l’année, ici c’est 2008. Donc le chemin d’accès devient pour un fichier « *.bc » C:\SERVEUR1\billet\continu\2008.
Le mois, ici 09, donc : C:\SERVEUR1\billet\continu\2008\9\
Enfin le nom, ici HYA donc : C:\SERVEUR1\billet\continu\2008\9\Hyaguères
Le fichier devra donc être copié à cet endroit.
Mes connaissances : j’ai suivi des cours d’introduction au langage C.
Mes idées pour le programme : Utiliser la fonction scanf pour lire le fichier et recopier dans un tableau les différents éléments du nom de fichiers dans le but de parcourir correctement l'arborescence du serveur selon l'élément trouver dans le talbeau.
exemple : je créé le tableau suivant (la première ligne de ce tableau sert de repère, seule la deuxième ligne du tableau sera créer par le programme)
1ère lettre extension --- 2ème lettre extension --- Année --- Mois --- Nom
t c 2008 09 HYA
Et le programme n'aura plus qu'a parcourir le tableau. Dès qu'il rencontrera l'indice 0 du tableau il devra se diriger dans l'arborescence du serveur jusqu'au dossier portant le nom "temps" pour t. Le tout avec la fonction if.
if ( t[0] == "t" )
go to C:\serveur\temps (par exemple)
Le problème c'est que je n'ai aucune connaissance de la manipulation des dossiers en C, j'ai lu certain post, et il me semble que c'est assez compliqué ...
Je voulais savoir si un programme en C était capable de résoudre mon problème, ou s’il fallait plutôt utiliser un logiciel.
Merci d’avance pour votre aide.
J'espère avoir été clair si vous avez des questions ou si vous voulez plus de détails j'y répondrai avec plaisir.
Cordilament.
Nicolas
Partager