Je ne sais pas si c'est la question habituelle qui est posée ici, ou si j'obtiendrai des réponses à celle-ci, mais je cherche une approche de pseudo-code pour générer des enregistrements de liaison DB à partir d'une structure de dossiers contenant des fichiers image.Algorithme de recherche de dossier
J'ai un ensemble de dossiers, structuré comme folllows:
+-make_1/
| +--model_1/
| +-default_version/
| | +--1999
| | +--2000
| | | +--image_01.jpg
| | | +--image_02.jpg
| | | +--image_03.jpg
| | | ...
| | +--2001
| | +--2002
| | +--2003
| | ...
| | +--2009
| +--version_1/
| | +--1999
| | ...
| | +--2009
| +--version_2/
| | +--1999
| | +--2000
| | +--2001
| | | +--image_04.jpg
| | | +--image_05.jpg
| | | +--image_06.jpg
| | | ...
| | +--2002
| | +--2003
| | | +--image_07.jpg
| | | +--image_08.jpg
| | | +--image_09.jpg
| | ...
| | +--2009
... ... ...
En substance, il représente les images possibles pour les véhicules, par année à partir de 1999.
modèles et les marques (par exemple Marque: Alfa Romeo, modèle: 145) viennent dans diverses garnitures ou versions. Chaque garniture, ou version, peut être trouvée dans un certain nombre de véhicules qui auront la même apparence mais auront des différences de type de carburant ou de cylindrée.
Pour éviter la duplication, la structure de dossiers ci-dessus utilise un dossier par défaut ... Et des images apparaissent pour la version par défaut à partir de 2000. J'ai besoin de produire la table des liens pour chaque version - selon qu'ils ont leurs propres images, ou utilisent la version par défaut ...
Donc par exemple, la version_1 n'a pas de fichiers image, donc je dois faire des liens pour les images par défaut, en commençant en 2000 et continuant jusqu'en 2009.
La version 2 commence par utiliser les images par défaut en 2000, mais utilise deux nouveaux ensembles d'abord pour 2001-2002, puis 2003 -2009. La liste des liens nécessaires sont donc ...
version start end file_name
======= ===== ===== =========
version_1 2000 2009 image_01.jpg
version_1 2000 2009 image_02.jpg
version_1 2000 2009 image_03.jpg
...
version_2 2000 2001 image_01.jpg
version_2 2000 2001 image_02.jpg
version_2 2000 2001 image_03.jpg
version_2 2001 2003 image_04.jpg
version_2 2001 2003 image_05.jpg
version_2 2001 2003 image_06.jpg
version_2 2003 2009 image_07.jpg
version_2 2003 2009 image_08.jpg
version_2 2003 2009 image_09.jpg
...
(valeur par défaut est juste que - un porte-lieu, et aucun lien sont nécessaires pour cela.)
En ce moment je suis en cours d'exécution à travers les dossiers , la construction de tableaux, puis tailler la graisse à la fin. Je me demandais juste s'il y avait un raccourci, en utilisant une sorte d'approche de traitement de texte? Il y a environ 45 000 dossiers, dont la plupart sont vides :-)
Une structure de liste serait utile, au lieu d'un tableau que vous tronquer à la fin – colithium