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

Microsoft verschiebt erneut Copilot Recall

Die Entwickler arbeiten noch an weiteren „Verfeinerungen“. Windows Insider erhalten nun wohl eine erste Vorschau…

17 Stunden ago

GenKI im Job: Mitarbeitende schaffen Tatsachen

Laut Bitkom-Umfrage werden in jedem dritten Unternehmen in Deutschland private KI-Zugänge genutzt. Tendenz steigend.

19 Stunden ago

97 Prozent der Großunternehmen melden Cyber-Vorfälle

2023 erlitten neun von zehn Unternehmen in der DACH-Region Umsatzverluste und Kurseinbrüche in Folge von…

20 Stunden ago

„Pacific Rim“-Report: riesiges, gegnerisches Angriffs-Ökosystem

Der Report „Pacific Rim“ von Sophos beschreibt Katz-und-Maus-Spiel aus Angriffs- und Verteidigungsoperationen mit staatlich unterstützten…

23 Stunden ago

DeepL setzt erstmals auf NVIDIA DGX SuperPOD mit DGX GB200-Systemen

NVIDIA DGX SuperPOD soll voraussichtlich Mitte 2025 in Betrieb genommen und für Forschungsberechnungen genutzt werden.

23 Stunden ago

Latrodectus: Gefährlicher Nachfolger von IcedID

Latrodectus, auch bekannt als BlackWidow, ist auch unter dem Namen LUNAR SPIDER bekannt.

24 Stunden ago