AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi letzten Ordner eines Pfades ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

letzten Ordner eines Pfades ermitteln

Ein Thema von Helmi · begonnen am 13. Jan 2013 · letzter Beitrag vom 14. Jan 2013
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 19:55
Hallo,

gibt es eine Funktion, mit der man den letzten Ordner eines Pfades,z. B.
Zitat:
C:\OrdnerA\OrdnerAA\OrdnerAAA
ermitteln kann (im Beispiel "OrdnerAAA")?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai
Online

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#2

AW: letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 20:03
ExtractFileName?

MfG Dalai
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#3

AW: letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 20:08
Woher weiss man, ob das ein Verzeichnis oder eine Datei ist?
ExtractFilename('C:\OrdnerA\OrdnerAA\OrdnerAAA') würde den String 'OrdnerAAA' liefern.
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#4

AW: letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 20:12
mmh - danke! - auf ExtractFileName wär ich jetzt nicht gekommen.

Aber natürlich ist es so - schliesslich kann das Letzte nur ein Ordner oder eine Datei sein (und die ohne Erweiterung)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 20:40
Woher weiss man, ob das ein Verzeichnis oder eine Datei ist?
Einfach das Betriebssystem (Dateiattribute) fragen: http://www.delphidabbler.com/codesni...es=IsDirectory
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: letzten Ordner eines Pfades ermitteln

  Alt 13. Jan 2013, 23:01
Hallo,

gibt es eine Funktion, mit der man den letzten Ordner eines Pfades,z. B.
Zitat:
C:\OrdnerA\OrdnerAA\OrdnerAAA
ermitteln kann (im Beispiel "OrdnerAAA")?
[Klugscheissermodus AN]

Das ist kein Pfad sondern ein Verzeichnis
Zitat von Verzeichnis:
C:\OrdnerA\OrdnerAA\OrdnerAAA
Zitat von Pfad:
C:\OrdnerA\OrdnerAA\OrdnerAAA\
[Klugscheissermodus AUS]

Delphi-Referenz durchsuchenExtractFileName kontrolliert nicht, ob die angegebene Datei existiert oder ob es sich wirklich um eine Datei oder ein Verzeichnis handelt. Es wird schlicht und ergreifend der Pfad aus dem übergebenen String entfernt.

Übergibt man das Verzeichnis (l.t. Definition oben) dann ist das Ergebnis "OrdnerAAA".
Übergibt man den Pfad (l.t. Definition oben) dann ist das Ergebnis "".
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: letzten Ordner eines Pfades ermitteln

  Alt 14. Jan 2013, 07:02
Statt zu referieren könnte man es auch einfach formulieren:
ExtractFileName(ExcludeTrailingPathDelimiter(<Pfad oder Verzeichnis>)) Ggf. noch die Dateiattribute ermitteln, dann weiß man, ob es ein Verzeichnis oder eine Datei ist.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#8

AW: letzten Ordner eines Pfades ermitteln

  Alt 14. Jan 2013, 07:50
Statt zu referieren könnte man es auch einfach formulieren:
ExtractFileName(ExcludeTrailingPathDelimiter(<Pfad oder Verzeichnis>))
So hab ich es schlussendlich auch gemacht - das reicht mir, denn ich bekomme einen Dateinamen übergeben inkl. Pfadangabe und sortiere zuvor schon den Pfad daraus raus (ExtractFilePath). Aus dem nun erhaltenen Pfad (richtig so?) will ich nun das letzte Verzeichnis (richtig so?) ermitteln.
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
terence14
(Gast)

n/a Beiträge
 
#9

AW: letzten Ordner eines Pfades ermitteln

  Alt 14. Jan 2013, 11:24
Ich löse solche Probleme immer, indem ich

1) den String prüfe, ob er auf ein "\" endet,
nachdem ich mit s:=Trim(s) alle Leerzeichen am
Ende entfernt habe.

2) ist das der Fall, hänge einen "." an,
wenn nicht hänge ein "\." an
und schau mit DirectoryExist(s) nach,
ob der Pfad existiert.

3) Wenn ja, dann ist das letzte im String ein
Verzeichnisname, ansonsten ein Dateiname

4) Mit ExtractFileName(s) wird übrigens immer der
letzte Stringabschnitt nach einem "\" zurückgegeben.

MfG,
terence
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz