Inhaltsverzeichnis
Einführung
Dateien und Verzeichnisse
Algorithmus
Beispiel
Ausgabe
Zeitliche Komplexität
Fazit
Heim Backend-Entwicklung C#.Net-Tutorial C#-Programm zum Überprüfen, ob ein Pfad ein Verzeichnis oder eine Datei ist

C#-Programm zum Überprüfen, ob ein Pfad ein Verzeichnis oder eine Datei ist

Sep 05, 2023 pm 05:49 PM

C# 程序检查路径是目录还是文件

Einführung

Lernen wir, wie man ein C#-Programm schreibt, um zu überprüfen, ob ein Pfad ein Verzeichnis oder eine Datei ist. Ein Verzeichnis, auch Ordner genannt, ist ein Ort auf Ihrem Computer, an dem Dateien gespeichert werden können. Verzeichnisse enthalten neben Dateien auch andere Verzeichnisse oder Verknüpfungen.

Eine Datei ist eine Sammlung von Daten auf einem Laufwerk mit einer eindeutigen Kennung und einem Verzeichnispfad. Wenn eine Datei zum Anzeigen oder Schreiben geöffnet wird, wird sie in einen Stream konvertiert. Ein Stream ist einfach eine Folge von Bytes, die einen Kommunikationspfad durchlaufen.

Dateien und Verzeichnisse

Dateien sind echte Datendateien, während Verzeichnisse Repositorys sind, in denen logische Dateien auf dem System abgelegt werden. Zur Verarbeitung von Dateien und Verzeichnissen verfügt die Common Language Runtime (CLR) über die Klassen File, FileInfo, Directory und DirectoryInfo im System.IO-Namespace.

Um Verzeichnisse in C# zu verwalten, können wir Directory oder DirectoryInfo verwenden. Die Directory-Klasse ist eine statische Klasse mit statischen Funktionen zum Umgang mit Verzeichnissen. Diese Klasse kann nicht vererbt werden. DirectoryInfo-Instanzen stellen Informationen zu einem bestimmten Verzeichnis bereit.

Ein Ordner hat eine Dateiklasse und eine Dateiinformationsklasse. Die File-Klasse wird zum Ausführen allgemeiner Aufgaben wie Kopieren, Verschieben, Umbenennen, Erstellen, Öffnen, Löschen und Hinzufügen zu einer einzelnen Datei verwendet. Die File-Klasse kann auch verwendet werden, um Dateieigenschaften oder Datums-/Uhrzeitinformationen im Zusammenhang mit der Dateierstellung, dem Zugriff und dem Schreiben von Dateien abzurufen und zu ändern. Sowohl die File- als auch die FileInfo-Klasse verfügen über dieselbe Grundfunktionalität.

Der einzige Unterschied besteht darin, dass die File-Klasse über interne Methoden zum Umgang mit Dateien verfügt, während die FileInfo-Klasse über Instanzmethoden zum Umgang mit Dateien verfügt.

Öffentlicher statischer Bool vorhanden (String? Pfad); wird verwendet, um zu überprüfen, ob die Datei oder das Verzeichnis vorhanden ist. Ist der Parameter hier ein String? Weg. Dies ist der zu überprüfende Pfad. Der Rückgabetyp ist boolean. Der Grund dafür, dass diese Funktion boolesch ist, liegt darin, dass es bei der Pfadprüfung nur zwei Ergebnisse gibt. Die Datei oder das Verzeichnis ist entweder vorhanden oder nicht vorhanden, genau wie das Schlüsselwort der Funktion. Es gibt also „true“ zurück, wenn das Verzeichnis oder die Datei existiert, und „false“, wenn es nicht existiert oder beim Versuch, auf die Adresse zuzugreifen, ein Fehler auftritt (z. B. eine beschädigte Adresse oder mehr).

Algorithmus

Der folgende Algorithmus zeigt Schritt für Schritt, wie Sie ein Programm schreiben, um zu überprüfen, ob es sich bei einem bestimmten Pfad um ein Verzeichnis oder eine Datei handelt.

Schritt 1 – Zuerst müssen wir einen String deklarieren, der die Adresse enthält, an der wir prüfen möchten, ob es sich um eine Datei oder ein Verzeichnis handelt

Schritt 2 Dann muss die Bedingungsprüfung durchgeführt werden, wir verwenden die Methode public static bool Exists (string? path); um zu prüfen, ob die Datei existiert.

Schritt 3 Es liegt ganz beim Programmierer, zu entscheiden, was er zuerst prüfen möchte. Möchte er den Pfad einer Datei oder eines Verzeichnisses überprüfen?

Schritt 4 Wenn der Pfad beide Prüfungen nicht besteht, ist die Ausgabe ein ungültiger Pfad und wird als Meldung angezeigt.

Beispiel

// For File.Exists, Directory.Exists
using System;
using System.IO;
class ttpt {
   static void Main() {
      string PathCheck = “D:/ipl”;

      // Here we check that the input path is a file
      if(File.Exists(PathCheck)) {
      
         // If the path provided is a file
         Console.WriteLine(“A file exists on this path”);
      }
      
      // Here we check if the path as input is a directory
      else if(Directory.Exists(PathCheck)) {
      
         // This input path is a directory
         Console.WriteLine(“A directory exists on this path”);
      }
      
      // If it is invalid i.e., it is neither directory nor a path
      else {
         Console.WriteLine("{0} is invalid. The input is neither a file nor a directory.", path);
      }
   }
}
Nach dem Login kopieren

Ausgabe

A file exists on this path
Nach dem Login kopieren

Der obige Code prüft, ob der angegebene Pfad eine Datei ist. Zuerst deklarieren wir im Code eine Zeichenfolge zum Speichern der Adresse, um zu überprüfen, ob es sich um eine Datei oder ein Verzeichnis handelt. Dann verwenden wir public static bool Exists(string?path); das mit Datei- und Verzeichnisklassen verwendet werden kann, um mithilfe des entsprechenden Klassenschlüsselworts zu überprüfen, ob eine Datei oder ein Verzeichnis vorhanden ist. Dies kann durch den Einsatz von bedingten Prüfungen erfolgen. Wenn Benutzer eine Stapelprüfung durchführen möchten, können sie durch Erstellen einer Klasse ein Array von Adressen als Parameter übergeben. Überprüfen Sie sie dann einzeln. Da public static bool Exists (string?path); die Rückgabe eines booleschen Werts ist, führen wir eine bedingte Prüfung durch.

Nachgestellte Leerzeichen werden vom Ende des Pfadparameters entfernt, bevor überprüft wird, ob das Verzeichnis existiert.

Die Groß-/Kleinschreibung von Pfadparametern hängt vom Dateisystem ab, in dem der Code ausgeführt wird. Bei NTFS (dem üblichen Windows-Dateisystem) wird beispielsweise die Groß-/Kleinschreibung nicht beachtet, während bei Linux-Dateisystemen die Groß-/Kleinschreibung nicht beachtet wird.

Zeitliche Komplexität

Im Algorithmus nach der Deklaration der Zeichenfolge. public static bool Exists (string?path); Diese Methode ist eine boolesche Rückgabemethode. Da das gesuchte Element nur einmal direkt aufgerufen wird, beträgt die zeitliche Komplexität dieses Algorithmus O(1).

Fazit

Damit sind wir am Ende des Artikels angelangt und haben gelernt, wie man prüft, ob es sich bei dem angegebenen Pfad um ein Verzeichnis oder eine Datei handelt. Wir beginnen mit den Definitionen von Dateien und Verzeichnissen und gehen dann zum Verständnis der Unterschiede zwischen Dateien und Verzeichnissen über. Dann lernten wir den Algorithmus des Programms kennen und sahen uns anschließend das Programm an, um den Pfad zu überprüfen. Wir hoffen, dass dieser Artikel Ihr Verständnis von C# verbessert hat.

Das obige ist der detaillierte Inhalt vonC#-Programm zum Überprüfen, ob ein Pfad ein Verzeichnis oder eine Datei ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man verschiedene Symbole in der C -Sprache verwendet Wie man verschiedene Symbole in der C -Sprache verwendet Apr 03, 2025 pm 04:48 PM

Die Nutzungsmethoden von Symbolen in der C-Sprachabdeckung Arithmetik, Zuordnung, Bedingungen, Logik, Bitoperatoren usw. werden für grundlegende mathematische Operationen verwendet, Zuordnungsoperatoren werden zur Zuordnung und Addition verwendet, Subtraktion, Multiplikationszuordnung und Abteilungszuweisung, Zustandsbetreiber werden für Unterschiede verwendet. Logische Operationen werden verwendet. Logische Operationen werden verwendet. Logische Operationen werden verwendet. Zeiger, Markierungen am Ende der Datei und nicht numerische Werte.

Was ist die Rolle von CHAR in C -Saiten? Was ist die Rolle von CHAR in C -Saiten? Apr 03, 2025 pm 03:15 PM

In C wird der Zeichenentyp in Saiten verwendet: 1. Speichern Sie ein einzelnes Zeichen; 2. Verwenden Sie ein Array, um eine Zeichenfolge darzustellen und mit einem Null -Terminator zu enden. 3. Durch eine Saitenbetriebsfunktion arbeiten; 4. Lesen oder geben Sie eine Zeichenfolge von der Tastatur aus.

Der Unterschied zwischen Multithreading und asynchronem C# Der Unterschied zwischen Multithreading und asynchronem C# Apr 03, 2025 pm 02:57 PM

Der Unterschied zwischen Multithreading und Asynchron besteht darin, dass Multithreading gleichzeitig mehrere Threads ausführt, während asynchron Operationen ausführt, ohne den aktuellen Thread zu blockieren. Multithreading wird für rechenintensive Aufgaben verwendet, während asynchron für die Benutzerinteraktion verwendet wird. Der Vorteil des Multi-Threading besteht darin, die Rechenleistung zu verbessern, während der Vorteil von Asynchron nicht darin besteht, UI-Threads zu blockieren. Die Auswahl von Multithreading oder Asynchron ist von der Art der Aufgabe abhängt: Berechnungsintensive Aufgaben verwenden Multithreading, Aufgaben, die mit externen Ressourcen interagieren und die UI-Reaktionsfähigkeit asynchron verwenden müssen.

Der Unterschied zwischen char und wchar_t in der C -Sprache Der Unterschied zwischen char und wchar_t in der C -Sprache Apr 03, 2025 pm 03:09 PM

In der C -Sprache ist der Hauptunterschied zwischen char und wchar_t die Zeichencodierung: char verwendet ASCII oder erweitert ASCII, wchar_t Unicode; char nimmt 1-2 Bytes auf, wchar_t nimmt 2-4 Bytes auf; char ist für englischen Text geeignet. Wchar_t ist für mehrsprachige Text geeignet. char ist weithin unterstützt, wchar_t hängt davon ab, ob der Compiler und das Betriebssystem Unicode unterstützen. char ist in der Charakterbereich begrenzt, WCHAR_T hat einen größeren Charakterbereich und spezielle Funktionen werden für arithmetische Operationen verwendet.

Wie man mit Sonderfiguren in der C -Sprache umgeht Wie man mit Sonderfiguren in der C -Sprache umgeht Apr 03, 2025 pm 03:18 PM

In der C -Sprache werden Sonderzeichen durch Escape -Sequenzen verarbeitet, wie z. B.: \ n repräsentiert Linienbrüche. \ t bedeutet tab charakter. Verwenden Sie Escape -Sequenzen oder Zeichenkonstanten, um Sonderzeichen darzustellen, wie z. B. char c = '\ n'. Beachten Sie, dass der Backslash zweimal entkommen muss. Verschiedene Plattformen und Compiler haben möglicherweise unterschiedliche Fluchtsequenzen. Bitte wenden Sie sich an die Dokumentation.

Wie man CHO in C -Sprache umwandelt Wie man CHO in C -Sprache umwandelt Apr 03, 2025 pm 03:21 PM

In der C -Sprache kann die char -Typ -Konvertierung direkt in einen anderen Typ konvertiert werden, wenn: Casting: Verwenden von Casting -Zeichen. Automatische Konvertierung des Typs: Wenn ein Datentyp einen anderen Werttyp berücksichtigen kann, wandelt der Compiler diese automatisch um.

Was ist die Funktion der C -Sprachsumme? Was ist die Funktion der C -Sprachsumme? Apr 03, 2025 pm 02:21 PM

Es gibt keine integrierte Summenfunktion in der C-Sprache, daher muss sie selbst geschrieben werden. Die Summe kann erreicht werden, indem das Array durchquert und Elemente akkumulieren: Schleifenversion: Die Summe wird für die Schleifen- und Arraylänge berechnet. Zeigerversion: Verwenden Sie Zeiger, um auf Array-Elemente zu verweisen, und eine effiziente Summierung wird durch Selbststillstandszeiger erzielt. Dynamisch Array -Array -Version zuweisen: Zuordnen Sie Arrays dynamisch und verwalten Sie selbst den Speicher selbst, um sicherzustellen, dass der zugewiesene Speicher befreit wird, um Speicherlecks zu verhindern.

So verwenden Sie char Array in C -Sprache So verwenden Sie char Array in C -Sprache Apr 03, 2025 pm 03:24 PM

Das Char -Array speichert Zeichensequenzen in der C -Sprache und wird als char Array_name [Größe] deklariert. Das Zugriffselement wird durch den Einweisoperator weitergeleitet, und das Element endet mit dem Null -Terminator '\ 0', der den Endpunkt der Zeichenfolge darstellt. Die C -Sprache bietet eine Vielzahl von String -Manipulationsfunktionen wie Strlen (), Strcpy (), Strcat () und strcmp ().

See all articles