Seite 2 von 4

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 02:54
von al90
ts-soft hat geschrieben:Der Logik werde ich lieber nicht folgen, um diese Uhrzeit :mrgreen:
Bei der Zeilenlänge wird das auch am Tage nichts. :lol:

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 02:59
von ts-soft
Zwar nicht eine Zeile, aber scheint wenigstens zu funktionieren, was ja viel wichtiger ist:

Code: Alles auswählen

 Procedure.s GetParentDirectory(Dir$)

  If Len(Dir$) > 3
    If GetFilePart(Dir$) : Dir$ = GetPathPart(Dir$) : EndIf
    Dir$ = GetPathPart(Left(Dir$, Len(Dir$)-1))
  EndIf

  ProcedureReturn Dir$

EndProcedure

Debug GetParentDirectory("C:\MainFolder\SubFolder_1\SubFolder_2\")
Debug GetParentDirectory("C:\MainFolder\SubFolder_1\")
Debug GetParentDirectory("C:\MainFolder\")
Debug GetParentDirectory("C:\")
Debug GetParentDirectory("C:\a\b\c\d\e\") ; <--- Das geht jetzt also auch.
Debug GetParentDirectory("\\UBUNTU_DESKTOP\pb-ubuntu32\")
Debug GetParentDirectory("d:\ts-temp\simpsons_006.jpg")

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:05
von al90
Oh man um die Uhrzeit hab ich wohl nur noch Denkfehler. :lol:
Naja jetzt weis ich was ich falsch gemacht hatte. Hier meine Lösung: :wink:

Code: Alles auswählen

Procedure.s GetParentDirectory(Dir$)

  If Len(Dir$) > 3
    Dir$ = GetPathPart(Left(GetPathPart(Dir$), Len(GetPathPart(Dir$))-1))
  EndIf

  ProcedureReturn Dir$

EndProcedure

Debug GetParentDirectory("\\UBUNTU_DESKTOP\pb-ubuntu32\")
Debug GetParentDirectory("d:\ts-temp\simpsons_006.jpg")
Debug GetParentDirectory("C:\a\b\c\d\e\")

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:07
von salbei
Naja, nach dem Edit sollte alles passen, der Bug ist mir auch aufgefallen, allerdings erst NACH dem ersten Posting ;-)

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:09
von salbei
al90 hat geschrieben:Oh man um die Uhrzeit hab ich wohl nur noch Denkfehler. :lol:
Naja jetzt weis ich was ich falsch gemacht hatte. Hier meine Lösung: :wink:

Code: Alles auswählen

Procedure.s GetParentDirectory(Dir$)

  If Len(Dir$) > 3
    Dir$ = GetPathPart(Left(GetPathPart(Dir$), Len(GetPathPart(Dir$))-1))
  EndIf

  ProcedureReturn Dir$

EndProcedure

Debug GetParentDirectory("\\UBUNTU_DESKTOP\pb-ubuntu32\")
Debug GetParentDirectory("d:\ts-temp\simpsons_006.jpg")

Und

Code: Alles auswählen

Debug GetParentDirectory("C:\a\b\c\d\e")
?

8)

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:16
von a14xerus
I don't get it


Während dem lesen hab ich mich irgendwie gefühlt als wäre ich in einer Zeitschleife :D
Irgendwie hab ich ein paar DejaVu gehabt und hatte aus irgendeinem grund das gefühldas die psotings in der falschen reihenfolge da stehen würden :D


Bin ich nur doof oder kann mir mal einer die jetzt aktuellste Version der "GetParentDirectory" Procedure geben ? :D

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:17
von ts-soft
a14xerus hat geschrieben:Bin ich nur doof oder kann mir mal einer die jetzt aktuellste Version der "GetParentDirectory" Procedure geben ? :D
Nein, da bisher noch keine korrekt funktioniert!

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:19
von al90
salbei hat geschrieben:
Und

Code: Alles auswählen

Debug GetParentDirectory("C:\a\b\c\d\e")
?

8)
Ja hast recht, war noch ein Fehler drinn. Korrigiert!

EDIT:

Geht immernoch nicht. Sorry aber ist zu spät für mich heute. Ich kriege nix mehr hin.

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:22
von a14xerus
ts-soft hat geschrieben:
a14xerus hat geschrieben:Bin ich nur doof oder kann mir mal einer die jetzt aktuellste Version der "GetParentDirectory" Procedure geben ? :D
Nein, da bisher noch keine korrekt funktioniert!
Und was ist mit deiner ? :
ts-soft hat geschrieben:Zwar nicht eine Zeile, aber scheint wenigstens zu funktionieren, was ja viel wichtiger ist:

Code: Alles auswählen

 Procedure.s GetParentDirectory(Dir$)

  If Len(Dir$) > 3
    If GetFilePart(Dir$) : Dir$ = GetPathPart(Dir$) : EndIf
    Dir$ = GetPathPart(Left(Dir$, Len(Dir$)-1))
  EndIf

  ProcedureReturn Dir$

EndProcedure
; [...] 

Re: Get ParentDirectory - (Mit nur einer Zeile)

Verfasst: 08.04.2010 03:42
von al90
a14xerus hat geschrieben:Und was ist mit deiner ? :
Geht auch noch nicht.

Code: Alles auswählen

Debug GetParentDirectory("d:\a\b\c\d\e")
Hier mein (Endgültiger) Letzter versuch für Heute. :mrgreen:

Code: Alles auswählen

Procedure.s GetParentDirectory(Dir$)

  If Len(Dir$) > 3
    If Right(Dir$,1)<>"\" And GetExtensionPart(Dir$)="" : Dir$+"\" : EndIf
    Dir$ = GetPathPart(Left(GetPathPart(Dir$), Len(GetPathPart(Dir$))-1))
  EndIf

  ProcedureReturn Dir$

EndProcedure

Debug GetParentDirectory("\\UBUNTU_DESKTOP\pb-ubuntu32\")
Debug GetParentDirectory("d:\ts-temp\simpsons_006.jpg")
Debug GetParentDirectory("d:\a\b\c\d\e")
Hat jetzt zwar 5 Zeilen, aber geht erstmal soweit. (Hoffentlich)