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

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

简介

学习如何编写 C# 程序来检查路径是目录还是文件。目录(也称文件夹)是电脑上可以保存文件的地方。目录除了包含文件之外,还包含其他目录或快捷方式。

文件是驱动器上的数据集合,具有独特的标识符和目录路径。当文件被打开进行查看或写入时,它会被转换为流。流只是通过通信路线遍历的一系列字节。

文件 vs 目录

文件是真实的数据文件,而目录是系统上用于逻辑文件放置的库。为了处理文件和目录,公共语言运行时(CLR)在 System.IO 命名空间中有 File、FileInfo、Directory 和 DirectoryInfo 类。

为了在 C# 中处理目录,可以使用 Directory 或 DirectoryInfo。Directory 类是一个静态类,具有处理目录的静态函数。这个类不能被继承。DirectoryInfo 实例提供关于特定目录的信息。

有一个文件类和一个文件信息类用于文件夹。文件类用于常见任务,如复制、移动、重命名、创建、打开、删除和添加到单个文件。文件类还可用于获取和更改与文件创建、访问和编写相关的文件特性或 DateTime 信息。File 类和 FileInfo 类具有相同的基本功能。

唯一的区别是文件类具有用于处理文件的内在方法,而 FileInfo 类具有用于处理文件的实例方法。

public static bool Exists(string? path);用于检查文件或目录是否存在。这里的参数是 string? path。这是要检查的路径。它的返回类型是 boolean。这个函数返回布尔值的原因是当检查路径时,只有两种结果。要么文件或目录存在,要么不存在,就像函数关键字一样。如果存在目录或文件,则返回 true,如果不存在或在尝试访问地址时发生任何类型的错误,如断开的地址或更多,则返回 false。

算法

下面的算法将提供一个逐步的过程,用于编写一个程序来检查给定的路径是目录还是文件。

步骤 1 − 首先我们必须声明一个包含我们想要检查的地址的字符串,以判断它是文件还是目录。

步骤 2 − 然后必须使用 public static bool Exists(string? path); 方法检查文件的存在与否。

步骤 3 − 完全取决于程序员决定他想先检查什么。他是想将路径作为文件还是目录进行检查。

步骤 4 − 如果路径无法通过这两个检查,则输出为无效路径,并作为消息显示。

示例

// 导入所需的命名空间
using System;
using System.IO;

class ttpt {
   static void Main() {
      string PathCheck = “D:/ipl”;

      // 我们检查输入的路径是否为文件
      if(File.Exists(PathCheck)) {

         // 如果提供的路径是文件
         Console.WriteLine(“此路径上存在文件”);
      }

      // 我们检查此输入路径是否为目录
      else if(Directory.Exists(PathCheck)) {

         // 此输入路径是目录
         Console.WriteLine(“此路径上存在目录”);
      }

      // 如果它无效,即它既不是目录也不是路径
      else {
         Console.WriteLine("{0} 是无效的。输入既不是文件也不是目录。", path);
      }
   }
}

输出

此路径上存在文件

上述代码是用来检查提供的路径是否为文件。在代码中,我们首先声明了一个字符串来存储要检查的地址,以检查它是文件还是目录。然后,我们使用 public static bool Exists(string? path),它可以与 FileDirectory 类一起使用,通过使用相应的类关键字来检查文件或目录的存在性。这可以通过使用条件检查来完成。如果要进行批量检查,则可以通过创建一个类将地址数组作为参数传递,然后逐个检查它们。由于 public static bool Exists(string? path) 返回一个布尔值,因此我们进行条件检查。

在验证目录是否存在之前,从路径参数的结尾删除尾随的空格。

路径参数的大小写敏感性与代码正在执行的文件系统相关。例如,NTFS(通常的 Windows 文件系统)是不区分大小写的,而 Linux 文件系统是区分大小写的。

时间复杂度

在算法中,声明字符串后,使用 public static bool Exists(string? path) 方法,这是一种返回布尔值的方法。由于它直接对我们正在搜索的元素进行单个调用,所以该算法的时间复杂度为 O(1)。

结论

因此,我们已经到达本文的结尾,我们已经学会了如何检查提供的路径是否是目录或文件。我们从文件和目录的定义开始,然后我们继续了解了文件和目录之间的区别。然后,我们理解了程序的算法,之后我们看到了检查路径的程序。我们希望本文能够增强您对 C# 的了解。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程