| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |
| |
| Webcast: PTC | Creo+, ein Webinar am 29.11.2024
|
Autor
|
Thema: directory sortieren (757 mal gelesen)
|
Martin.M Mitglied Maschinenbau-Ingenieur
Beiträge: 352 Registriert: 05.10.2002
|
erstellt am: 11. Dez. 2006 16:31 <-- editieren / zitieren --> Unities abgeben:
Hallo LISPler, ich möchte eine directory Liste sortieren. Wie stelle ich das am einfachsten an ? Für die Funktion directory habe ich keine Option gefunden damit es die Liste sortiert liefert. Und mit sort hatte ich auch keinen Erfolg. Ich hatte mir das so ähnlich vorgestellt: (setf idx-Datei-lst (sort (directory (format NIL "~A/*.htm" Idx-Ordner)) #'string< )) oder so (setf idx-Datei-lst (sort (namestring (directory (format NIL "~A/*.htm" Idx-Ordner))) #'string< )) Wie würdet Ihr die Liste sortieren ?
Tschuess Martin
------------------ OSDM - Die freie Wissensdatenbank WorkManager Forum Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Geppert Moderator Frank und Frei
Beiträge: 2158 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook Fury 16 G9, Windows 10 Pro 64
|
erstellt am: 11. Dez. 2006 17:17 <-- editieren / zitieren --> Unities abgeben: Nur für Martin.M
Das Problem ist wohl, dass die Elemente der von directory zurückgegebenen Liste vom Typ PATHNAME sind und nicht STRING, damit geht string< natürlich in die Hose und man muss sich eine eigene Sortierbedingung basteln. Wie immer schnell und ungetestet: Code:
(setf sortiert (sort unsortiert #'(lambda (vor nach) (let () (if (string< (format NIL "~a" vor) (format NIL "~a" nach)) t nil) );;let );;lambda );;sort );;setf
------------------ meine LISP-Makros sind auf osd.cad.de Grüße aus Wien Walter DC4 Technisches Büro GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000 Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.
|
erstellt am: 11. Dez. 2006 17:33 <-- editieren / zitieren --> Unities abgeben: Nur für Martin.M
|
Walter Geppert Moderator Frank und Frei
Beiträge: 2158 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook Fury 16 G9, Windows 10 Pro 64
|
erstellt am: 11. Dez. 2006 18:59 <-- editieren / zitieren --> Unities abgeben: Nur für Martin.M
|
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000 Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.
|
erstellt am: 11. Dez. 2006 19:13 <-- editieren / zitieren --> Unities abgeben: Nur für Martin.M
|
Walter Geppert Moderator Frank und Frei
Beiträge: 2158 Registriert: 12.12.2000 Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf HP ZBook Fury 16 G9, Windows 10 Pro 64
|
erstellt am: 11. Dez. 2006 19:41 <-- editieren / zitieren --> Unities abgeben: Nur für Martin.M
|
Martin.M Mitglied Maschinenbau-Ingenieur
Beiträge: 352 Registriert: 05.10.2002
|
erstellt am: 14. Dez. 2006 20:26 <-- editieren / zitieren --> Unities abgeben:
Hallo Claus, vielen Dank für die Hilfe, funktioniert gut. In die Lamda-Spezialitäten bin ich noch nicht eingestiegen. Wann hast Du denn Zeit für den LISP-Kurs ? hallo Walter,
sollen wir das Angebot von Claus annehmen und uns bei ihm zum LISP-Kurs anmelden ? Tschuess Martin
------------------ OSDM - Die freie Wissensdatenbank WorkManager Forum Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |