Laden...

Dateipfad prüfen ob dieser relativ ist

Erstellt von bird vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.718 Views
B
bird Themenstarter:in
75 Beiträge seit 2006
vor 14 Jahren
Dateipfad prüfen ob dieser relativ ist

Hallo zusammen,
ich habe mal wieder ein kleines Problem. Ich schreibe momentan an einer Consolenapplikation der ich einen Dateipfad (absolut) übergebe. Diese Datei Prüfe ich auf verschiedene Dinge. Bisher ist alles soweit kein Problem gewesen. Nun hänge ich an der Stelle, dass in der Datei weitere Dateipfade zu finden sind. Diese Pfade möchte ich nun prüfen und dazu gibt es 2 Bedingungen.

  1. Die Pfade müssen relativ angegeben sein
  2. Die Pfade müssen auf ein bestimmtes Verzeichnis (oder dessen Unterverzeichnisse) verweisen

Bei Punkt 1 liegt mein Problem, gibt es eine Methode, mit der ich herausfinden kann ob ein Pfad relativ oder absolut angegeben ist? Bei Punkt 2 sollte es dann keine Probleme mehr geben.

Gruß

49.485 Beiträge seit 2005
vor 14 Jahren

Hallo bird,

!Path.IsPathRooted

herbivore

PS: Bitte vorher immer in die :rtfm: Doku schauen.

T
574 Beiträge seit 2008
vor 14 Jahren

Tut IsPathRooted was anderes als festzustellen ob ein ":" im Pfad ist?

3.003 Beiträge seit 2006
vor 14 Jahren

Ja, wie auch in der MSDN steht.

Path.IsPathRooted("\share\c$\Windows\Microsoft.Net") -> true

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

49.485 Beiträge seit 2005
vor 14 Jahren

Hallo tkrasinger,

das halte ich für relativ 🙂 sicher. Denn ein Pfad ist ja auch dann rooted, wenn er mit Server- und Freigabenamen beginnt (UNC), also z.B. \fileserver\dokumente. Auch ein Pfad, der mit einem einfachen Backslash \ beginnt, wird vermutlich als rooted angesehen. Davon abgesehen wäre ein Pfad, der ein Doppelpunkt irgendwo und nicht direkt nach dem Laufwerksbuchstaben hat, nicht rooted, sondern invalid.

Aber du kannst ja in der :rtfm: Doku oder mit dem Reflector selbst nachgucken, wie IsPathRooted implementiert ist.

herbivore