Arbeiten mit Dateipfad-Werten in .NET: Die Path-Klasse hilft

Die Path-Klasse erlaubt das Arbeiten mit Dateipfad-Werten. Ein Hauptaspekt der Klasse liegt darin, dass sie zur Durchführung aller Operationen String-Werte verwendet. Das mag nicht nach einer großen Sache klingen, aber bei dem String kann es sich um einen tatsächlichen Dateinamen oder einen beliebigen String handeln. Um die Existenz einer Datei zu bestätigen, ist es empfehlenswert, eine andere Klasse, zum Beispiel die File-Klasse, zu verwenden. Die Klasse bietet verschiedene Eigenschaften und Methoden, um Operationen durchzuführen.

Viele der in der Path-Klasse enthaltenen Methoden akzeptieren einen Pfad als Parameter. Ein Pfad ist eine Zeichenfolge, die den Aufenthaltsort einer Datei oder eines Verzeichnisses beschreibt. Ein Pfad beschreibt nicht zwingend einen Ort auf einem Speichermedium. Das genaue Format eines Pfades ist durch die jeweilige Plattform bestimmt. Ein Pfad kann auf eine Datei verweisen oder nur auf ein Verzeichnis. Der angegebene Pfad kann sich auch auf einen relativen Pfad oder den UNC-Pfad (UNC = Universal Naming Convention) eines Server-/Freigabe-Namens beziehen.

Methoden

In der folgenden Liste sind einige der in der Path-Klasse verfügbaren Methoden aufgeführt:

  • ChangeExtension: Erlaubt die Änderung der Dateierweiterung einer Pfadzeichenfolge.
  • Combines: Damit können zwei Pfadzeichenfolgen zu einer verbunden werden.
  • GetDirectoryName: Gibt die in einem Pfadzeichenfolge enthaltenen Verzeichnisinformationen zurück.
  • GetExtension: Damit wird die in einer Pfadzeichenfolge enthaltene Erweiterung ausgegeben.
  • GetFileName: Gibt den Dateinamen und die Erweiterung einer Pfadzeichenfolge zurück.
  • GetFileNameWithoutExtension: Der Dateiname einer Pfadzeichenfolge wird ohne Erweiterung zurückgegeben.
  • GetFullPath: Gibt den absoluten Pfad einer Pfadzeichenfolge zurück.
  • GetInvalidFileNameChars: Veranlasst die Rückgabe des Arrays, das die Zeichen enthält, die in Dateinamen nicht zulässig sind.
  • GetPathRoot: Ruft die Informationen über das Stammverzeichnis eines Pfades ab.
  • GetRandomFileName: Gibt einen zufälligen Ordnernamen oder Dateinamen zurück.
  • GetTempFileName: Erstellt eine eindeutig benannte temporäre Datei auf dem Datenträger mit einer Größe von 0 Byte und gibt den vollständigen Pfad dieser Datei zurück.
  • GetTempPath:Gibt den Pfad des temporären Ordners des aktuellen Systems zurück.
  • HasExtension: Bestimmt, ob ein Pfad eine Dateinamenerweiterung enthält.
  • IsPathRooted:Ruft einen Wert ab, der angibt, ob die angegebene Pfadzeichenfolge absolute oder relative Pfadinformationen enthält.

Der beste Weg zum Verständnis der Anwendung dieser Methoden führt über ein Beispiel. Das C#-Beispiel in Listing A bietet einen kurzen Blick auf die Anwendung der Path-Klasse. Listing B enthält den entsprechenden VB.NET-Code.

Listing A

Listing B

Diese einfache Anwendung weist verschiedene Charakteristika der verwendeten Pfadzeichenfolge auf.

(Anmerkung: Ein Array mit Zeichen ist mit den Ergebnissen eines Aufrufs der Methode GetInvalidFileNameChars besetzt, aber der Inhalt dieses Zeichen-Arrays wird aufgrund von Problemen bei der Darstellung solcher Zeichen im Netz nicht angezeigt.)

Der zweite Abschnitt der Anwendung bestimmt mittels der Exists-Methode der File-Klasse, ob der Pfad existiert. Letztlich verkettet die Combines-Methode zwei Werte in eine Pfadzeichenfolge. Es folgt das von der Anwendung zurückgegebene Ergebnis (auf dem Testrechner):


Directory name: c:
File extension: .txt
Filename: techrepublic.txt
Filename w/o ext: techrepublic
Full path: c:techrepublic.txt
Root: c:
Random file name: km54krxb.s1g
Temp file name: C:Documents and SettingstpattonLocal Settings
Temptmp5D2F.tmp
File does exist.
The file c:test.exe does not exist.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

17 Stunden ago

Black Friday: Zahl der ominösen Shopping-Websites steigt

Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.

17 Stunden ago

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

24 Stunden ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

2 Tagen ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

2 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

2 Tagen ago