| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |
| |
| Webcast: PTC | Smart Services, ein Webinar am 13.12.2024
|
Autor
|
Thema: ich verzweifel an den Pfadangaben. (1578 mal gelesen)
|
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003
|
erstellt am: 18. Jun. 2019 11:34 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich würde gerne eine Liste von .mi Dateien abarbeiten mit denen ich was machen möchte. Ich verzweifel nur an diesen Pfadangaben. Ist es C:\ oder C:\\ oder irgendwas anderes. Oder liegt es daran das ich den "universal_load" Befehl verwende. Bitte nicht wundern, die Dateien haben keine Endung, sind aber .mi Dateien Das geht alles:
Code:
(universal_load :file "C:/area/cad2/KO1NYF/N/9/NICTH9" ) (universal_load :file "C:\\area\\cad2\\KO1NYF\\N\\9\\NICTH9" ) (universal_load :file "C:\/area\/cad2\/KO1NYF\/N\/9\/NICTH9" ) (setq dateipfad "C:\\area\\cad2\\KO1NYF\\N\\9\\NICTH9") (setq dateipfad "C:/area/cad2/KO1NYF/N/9/NICTH9" ) (universal_load :file dateipfad)
Aber wenn ich jetzt eine Textdatei mit:
Code:
(setq file "C:/area/Ordnerinhalt.txt")(with-open-file (daten1 file :direction :input :external-format :utf-8) (dotimes (Anfang 1) (setq dateipfad (read-line daten1 nil 'eof)) (universal_load :file dateipfad) ) )
einlese, bekomme ich das nicht hin egal wie ich den Pfad schreibe. Kann mir eine helfen und sagen wie der Pfad in der Textdatei geschrieben werden muss, damit ich das einlesen kann. Egal ob "C:\\" oder "C:/" oder "C:\" oder "C:\/" ich bekomme ich immer eine Meldung das die Datei nicht gefunden werden kann. ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MiBr Mitglied Konstrukteur
Beiträge: 575 Registriert: 30.06.2015 HP Z440 Workstation 64GB Modeling 20.1.2.0 (x64) Drafting 20.1.2.0 (64x) klas. UI Modell Manager 20.1.2.0 Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside
|
erstellt am: 18. Jun. 2019 13:00 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
|
der_Wolfgang Moderator Tastenhauer
Beiträge: 2219 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build10.0.19045.4780 ● Drafting V17~V20.7 ● Modeling V17~V20.7 ● Windchill 12.1.2.6 ● UWGM Client 13.0.0.1
|
erstellt am: 18. Jun. 2019 18:29 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Das mit der ==>> Zeilenendekennzeichnung hat dir Michael ja schon beigebogen. Eine weitere Stolperstelle könnten aber auch noch blanks sein. Nicht die häßlichen in der Mitte, sondern die fiesen am Anfang oder am Ende der Zeilen in deiner Dateil liste. Also lieber:
Code: (setq dateipfad (sd-string-trim (remove #\Return (read-line daten1 nil 'eof))))
Der univeral_load mag (genauso wie die anderen aus der Bande) sowas bestimmt auch nicht gerne: Code: (load_package " c:/temp/ebenda/dasPaket.pkg ")
------------ Falls in der (wie auch immer generierten) Datei liste aber noch anderer Mist (oder auch nur ne leerzeile) auf taucht:
Code: (when (probe-file dateipfad) (universal_load :file dateipfad))
------------ Vielleicht möchtest Du die Dateiliste auch gleich LISP-isch erzeugen? Gucke ==> da ------------ Aber: wenn du weisst das es MI Dateien sind.. dann nimm doch bitte die passende Laderoutinge dafür. universal_load ist ein wenig try und error ... 'ich probiers mal zu laden als package, als SD file, als Bild, als step, als .... als MI file'. Ach und ..... / nutzen. Aber das weisst du jetzt. ------------------ ● Firefox ESR ● Java Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● BuFDi ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003
|
erstellt am: 19. Jun. 2019 07:23 <-- editieren / zitieren --> Unities abgeben:
|
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003 MS: Windows 10 64bit OSD: 20.1 M020 ModelManager: 20.1 M020 NX 1899 TC 12.3
|
erstellt am: 19. Jun. 2019 07:51 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang, den am_load_drawing Befehl hätte ich wohl auch nehmen können, ich dachte der braucht die ".mi" Endung. Aber geht wohl auch so. Das mit dem directory auslesen in LISP und das noch in zig Unterordner ist nicht wirklich mein Freund. Da lobe ich mir den Vierzeiler in Phyton.
Code:
import ospfad = 'C:\\area\\cad2\\' files = [] for r, d, f in os.walk(pfad): for file in f: files.append(os.path.join(r, file))
------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Moderator Tastenhauer
Beiträge: 2219 Registriert: 3.20. ● PE60+80@home ● W10 Pro Build10.0.19045.4780 ● Drafting V17~V20.7 ● Modeling V17~V20.7 ● Windchill 12.1.2.6 ● UWGM Client 13.0.0.1
|
erstellt am: 19. Jun. 2019 18:36 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von Greskamp: den am_load_drawing Befehl hätte ich wohl auch nehmen können, ich dachte der braucht die ".mi" Endung. Aber geht wohl auch so.
Du bist doch auch einer von den ganz alten.. und kennst noch SolidDesigner auf HPUX .. "Dateiendungen" sind (soweit ich weiss) eine ==> freie Erfindung von Micro$oft.. und nur eine Names- Konvention. Jedem gescheiten Programm ist es schei.. egal, wie eine Datei hintenraus heisst. Es kommt einzig auf den Inhalt an. file-extension sind einem Unix/Linux vollkommen wurscht und irrelevant. Du kannst Deine Zeichnung auch meinHaus_drawing nennen, oder meinGrossesHaus.Drawing . Es ist egal. Zitat: Da lobe ich mir den Vierzeiler in Phyton.
Passt schon. Jedem das Mittel ihrer/seiner Wahl. Ich dachte nur... wenn Du eh schon LISP bemühst.. warum dann die Task in 2 separaten Schritten ausführen. Ich hätte natürlich einen EINzeiler genommen Code: find derOrdner -type f > /mnt/c/temp/Ordnerinhalt.txt
PS: du zählst Zeilen aber komisch... Perl ... VIER-zeiler? ------------------ ● Firefox ESR ● Java Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en) ● NotePad++ ● BuFDi ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |