Bonjour je n'étais pas tout à fait sûr de savoir comment nommer cette question, mais je vais vous expliquer pourquoi je suis en train de faire. Tout d'abord, j'ai un dossier qui contient des scripts SQL dans un format spécifique, qui est updateXtoY.sql, où X et Y sont des entiers. Ce dont j'ai besoin, c'est de savoir quel Y est le nombre le plus élevé. (Essentiellement, de savoir qui est le dernier script)ANT: Charger les noms de fichiers et extraire les données à partir des noms de fichiers
Donc, si j'ai dans mon dossier « scripts/» 3 fichiers:
update3to5.sql
update2to5.sql
update1to6.sql
le résultat que je besoin est d'avoir attribuer une propriété « latest.version 'la valeur de 6.
De ce point je peux facilement exécuter le script. Donc, le problème que j'ai est triple:
1- Comment charger les noms de fichiers dans une structure de données.
2- Comment parcourir la structure de données.
3- Comment évaluer chaque nom de fichier afin que je puisse extraire la partie « Y » du fichier et obtenir la valeur la plus élevée. (Je lis sur regex en ce moment)
Je suis nouveau à ANT et je ne suis pas sûr si cela est possible et/ou réalisable.
Merci pour vos suggestions.
pouvez-vous renommer vos fichiers afin que le numéro correspondant est F.E. avant updateTo6from1.sql vous pourriez alors simplement trier par nom de fichier et être fait avec le problème? – Yashima
Eh bien, tout cela doit être fait automatiquement à partir de ANT, donc je ne suis pas sûr une fois que les noms de fichiers sont chargés dans une structure si je peux garantir que le dernier sera le premier élément. – Endo
ça fait longtemps que j'ai utilisé Ant. Vous pouvez toujours implémenter ceci en tant que AntTask dans Java et utiliser votre propre tâche. En général, vous utiliserez probablement un FileSet pour charger vos fichiers, mais il ne semble pas trivial de trier un ensemble de fichiers. – Yashima