让我们学习如何编写 C# 程序来检查路径是目录还是文件。目录,也称为文件夹,是计算机上可以保存文件的位置。除了文件之外,目录还包含其他目录或快捷方式。
文件是驱动器上的数据集合,具有唯一标识符和目录路径。当打开文件进行查看或写入时,它会转换为流。流只是遍历通信路径的字节序列。
文件是真实的数据文件,而目录是系统上逻辑文件放置的存储库。为了处理文件和目录,公共语言运行时 (CLR) 在 System.IO 命名空间中具有类 File、FileInfo、Directory 和 DirectoryInfo。
为了在C#中处理目录,我们可以使用Directory或DirectoryInfo。目录类是一个静态类,具有处理目录的静态函数。这个类不能被继承。 DirectoryInfo 实例提供有关特定目录的信息。
文件夹有一个文件类和一个文件信息类。 File 类用于执行常见任务,例如复制、移动、重命名、创建、打开、删除和添加到单个文件。 File 类还可用于获取和更改与文件创建、访问和写入相关的文件特征或日期时间信息。 File 和 FileInfo 类都具有相同的基本功能。
唯一的区别是 File 类具有处理文件的内部方法,而 FileInfo 类具有处理文件的实例方法。
公共静态 bool 是否存在(字符串?路径);用于检查文件或目录是否存在。这里参数是字符串?小路。这是要检查的路径。它的返回类型是布尔值。该函数为布尔值的原因是,当检查路径时,只有两个结果。文件或目录要么存在,要么不存在,就像函数的关键字一样。因此,如果目录或文件存在,则返回 true,如果不存在或尝试访问该地址时发生任何类型的错误(例如损坏的地址或更多),则返回 false。
下面的算法将给出一个逐步的过程来编写一个程序来检查给定的路径是目录还是文件。
第 1 步 - 首先我们必须声明一个字符串,其中包含我们要检查它是文件还是目录的地址
第 2 步 − 然后必须进行条件检查,我们使用方法 public static bool Exists (string? path);检查文件是否存在。
第 3 步 − 程序员完全可以决定他要首先检查什么。他是否想检查文件或目录的路径。
第 4 步 −如果路径未通过两项检查,则输出为无效路径,并显示为消息。
// 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); } } }
A file exists on this path
上面的代码是检查提供的路径是否是一个文件。首先在代码中,我们声明了一个字符串来存储地址,以检查它是文件还是目录。然后我们使用 public static bool Exists(string?path);它可以与 File 和 Directory 类一起使用,通过使用相应的类关键字来检查文件或目录是否存在。这可以通过使用条件检查来完成。如果人们想要进行批量检查,则可以通过创建一个类将地址数组作为参数传递。然后一一检查。作为 public static bool Exists (string?path);返回布尔值是我们进行条件检查的原因。
在验证目录是否存在之前,将从路径参数的结尾删除尾随空格。
路径参数的大小写敏感性与执行代码的文件系统相关。例如,NTFS(常见的 Windows 文件系统)不区分大小写,而 Linux 文件系统则区分大小写。
在声明字符串之后的算法中。 public static bool Exists (string?path);该方法是一个布尔返回方法。因为它直接对我们正在搜索的元素进行一次调用,所以该算法的时间复杂度为 O(1)。
所以,我们已经到了文章的结尾,我们已经学会了如何检查提供的路径是目录还是文件。我们从文件和目录的定义开始,然后继续了解文件和目录之间的区别。然后我们了解了程序的算法,之后我们看到了检查路径的程序。我们希望本文能够增强您对 C# 的了解。
以上是C# 程序检查路径是目录还是文件的详细内容。更多信息请关注PHP中文网其他相关文章!