Benütze ich einen regulären Ausdruck für diesen Dateipfad?

8

Ich muss einen Dateipfad entfernen und den übergeordneten Ordner abrufen.

Sagen Sie, mein Pfad ist

%Vor%

Ich muss

bekommen
  1. Dateiname = Datei.jog

  2. Der Ordner befindet sich in = FolderB

  3. Und übergeordneter Ordner = FolderA

Ich muss immer zwei Stufen von der Stelle, an der sich die Datei befindet, entfernen.

Gibt es einen einfacheren Weg oder ist ein regulärer Ausdruck der richtige Weg?

    
uno 20.04.2010, 19:09
quelle

6 Antworten

21

FileInfo ist dein Freund:

%Vor%     
Jon Skeet 20.04.2010, 19:13
quelle
6
%Vor%     
Adam Robinson 20.04.2010 19:13
quelle
2

Überprüfen Sie die Directory-Klasse (in diesem Fall eine bessere Wahl als DirectoryInfo). Es tut alles, was Sie brauchen. Sie sollten keine Regex oder eine andere Analysetechnik verwenden.

    
Tom Cabanski 20.04.2010 19:13
quelle
2
%Vor%     
Darin Dimitrov 20.04.2010 19:14
quelle
0

Sie haben ein paar Optionen, um dies tatsächlich zu tun, die tatsächliche .net-Objekte anstelle von Regex verwenden.

Sie können die Dateiinfo verwenden:

%Vor%     
Pat 20.04.2010 19:15
quelle
0

Wenn Sie sicher sind, dass Sie immer mit einer Datei und zwei Verzeichnissen zu tun haben, versuchen Sie es mit split:

%Vor%     
house9 20.04.2010 19:14
quelle

Tags und Links