Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

Voici un code dans lequel je souhaite rajouter un filtre genre :

"je veux obtenir tous les DWG sauf ceux qui commence par a"

 

(GetFilePath "*.DWG" "a*.DWG" "C:/")

 

Code actuel :

 

(defun GetFilepath (file path)
(apply (function append)
(cons (if (vl-directory-files path file)
(mapcar (function (lambda (x) (strcat path "/" x))) (vl-directory-files path file))
) ;_ if
(mapcar (function (lambda (x) (GetFile file (strcat path "/" x))))
(vl-remove ".." (vl-remove "." (vl-directory-files path nil -1)))
) ;_ mapcar
) ;_ cons
) ;_ apply
)

 

(code piqué chez ev..y)

 

 

 

GetFilepath (file ext path)
...
wcmatch ???

 

 

Un petit casse tête ? :casstet:

 

Merci ...

 

 

Posté(e)

Salut

 

(vl-remove-if-not
 '(lambda (x) (wcmatch (vl-filename-base x) "~a*"))
 (getfile "*.dwg"  "C:")
) 

 

PS : Attention tu as changé le nom de la fonction dans le defun mais pas dans son appel récursif.

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Une fonction plus "générique", toujours basé sur le code d'Evgeniy

 

exemple :

 

(GetFile "acad*.lsp" "C:\\Program Files\\AutoCAD 2007")

retourne :

("C:\\Program Files\\AutoCAD 2007\\Express\\acadinfo.lsp"

"C:\\Program Files\\AutoCAD 2007\\Support\\acad2007.lsp"

"C:\\Program Files\\AutoCAD 2007\\Support\\acad2007doc.lsp"

"C:\\Program Files\\AutoCAD 2007\\Support\\acadinfo.lsp"

)

 

(GetWcFile "acad*.lsp" "~*2007*" "C:\\Program Files\\AutoCAD 2007")

retourne :

("C:\\Program Files\\AutoCAD 2007\\Express\\acadinfo.lsp"

"C:\\Program Files\\AutoCAD 2007\\Support\\acadinfo.lsp"

)

 

(defun GetWcFile (file pattern path)
 (apply 'append
   (cons
     (if (vl-directory-files path file)
(mapcar	'(lambda (x) (strcat path "\\" x))
	(vl-remove-if-not
    '(lambda (x) (wcmatch (vl-filename-base x) pattern))
    (vl-directory-files path file)
  )
)
     )
     (mapcar '(lambda (x) (GetWcFile file pattern (strcat path "\\" x)))
      (vl-remove ".."
		 (vl-remove "." (vl-directory-files path nil -1))
      )
     )
   )
 )
) 

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité