Je suis débutant et je suis en train d'écrire un programme en C/C++ pour windows avec l'API ; et je me pose un certain nombre de questions avant de poser mon algo sur le compilateur.
Alors déjà je récupère 4 tableaux correspondant chacun au contenu d'un répertoire, avec des noms et attributs de fichiers : comment déclareriez-vous ce tableau sachant que j'ai des types différents (nom de fichier, date de création ou de modification, taille en octets etc...) ? Une structure, un type ? Pouvez-vous me montrer la/les déclarations ?
Ensuite, le but de mon programme sera en fait de comparer les tableaux pour mettre à jour les bons fichiers et virer les plus vieux, et rajouter les nouveaux selon la taille du disque dur à remplir... Le programme n'étant là que pour vider et remplir un disque dur USB, en gros, mais intelligemment.
Comment classer le tableau : en SQL j'aurais fait : "SELECT * from Tableau1 order by tableau1.DATE_FS desc ;" où DATE_FS est le champ de mon tableau qui contient la date du fichier.
Dans mes cours de C, chaque fois qu'on faisait un tableau le prof nous demandait de le classer par nous-même avec une boucle : existe-t-il une fonction pour faire cette besogne ? Le but de cette ordination est de copier les fichiers par ordre d'importance CAD par date décroissante.
Sinon comment stocker mes tables en dur sur un langage compatible SQL depuis mon code en C ? Est-ce judicieux ? Quel type de fichier est le plus simple à traiter sachant que selon mes calculs chaque tableau recevra environ 20 000 entrées de noms de fichiers. Ca pourrait apporter un plus à mon programme de montrer un menu des mises à jours même si ce n'est pas crucial et que ça deviendrait rapidement inexploitable à l'oeil nu avec 20 000 lignes.
Sinon encore plus simple... Est-il possible de faire des requêtes SQL sur des objets C ou C++ qu'on a créé ? Doit-on utiliser des objets particuliers qui ressemblent à des structures ?
Vaut-il mieux utiliser des tableaux sachant que je vais avoir des types différents dans les tableaux mais que chaque tableau aura la même structure ? D'après ce que j'ai lu sur le typage C, le plus rigoureux serait de créer un "type struct" qui porte le nom du type des futurs tableaux... est-ce judicieux ?
Ensuite, un problème auquel mon programme va s'exposer c'est la différence entre taille de clustering et taille réelle des fichiers... Comment gérer cette différence avant ma copie de fichiers ? Comment un programme peut gérer ce genre de soucis lors de la copie ?
Comment calculer (ou récupérer) la taille disponible d'un disque dur ou d'une partition NTFS ?
Partager