Home > Backend Development > C#.Net Tutorial > C# program to delete empty and non-empty directories

C# program to delete empty and non-empty directories

PHPz
Release: 2023-08-29 12:57:02
forward
1552 people have browsed it

C# 删除空目录和非空目录的程序

Introduction

On a computer, we can store files in directories, also called folders. Directories also contain shortcuts to other directories and files. Here, we will discuss C# program to delete empty and non-empty directories. A static class named Directory provides static methods for working with directories. DirectoryInfo objects provide detailed information about a specific directory.

Delete empty and non-empty directories

Now that we have a directory (empty or not) we must delete it. An empty directory means that no files or subdirectories exist in the directory. A directory can be thought of as a grouping of files and subdirectories; it may or may not contain data. A directory that contains files or other directories is called a non-empty directory. Using the Delete() method of the Directory class, we can delete a directory. This method has two overloading methods -

  • Delete(String)

  • Delete(String,Boolean)

Delete(string)

This method is included in the Catalog class. This technique is used to delete empty directories. This method deletes a directory from a defined address or location.

public static void Delete (string DirLocation); 
Copy after login

Where DirLocation is the address of the directory that has been provided and we want to delete, the type of this parameter is a string. Now, some errors may occur after executing this command.

When the file with the same name and address specified by DirLocation already exists, an IO exception is thrown. Alternatively, the subfolder is read-only. Unauthorized access exceptions are another type of error that can occur. This exception is thrown if the caller does not have the required permissions. Argument Null Exception This error is thrown when DirLocation is null. Path Too Long Exception is another error that can occur when the given DirLocation, filename, or both exceed the system-defined maximum length. If the DirLocation is missing or cannot be found, a "Directory Not Found" exception occurs. Or the route indicated is wrong.

algorithm

The following algorithm will step by step give the process of writing a program to delete a directory. In this algorithm, we will use the Delete(String) method.

For example, we will consider an empty directory named "csk". Now, we will use the Delete(String) method and delete the "csk" directory.

Step 1 - We will use the Directory.delete method to delete the directory by passing the directory address.

Step 2 The deletion of the directory we wrote by using Console.Writeline() has been completed.

Example

// A C# program which goes on given address and deletes the empty directory
// Using Delete(string) method
using System;
using System.IO;
class TutPoint {
   static void Main(){

      // Deleting the empty directory by using the Delete() method
      Directory.Delete("D:/csk");
      Console.WriteLine("Deleted");
   }
}
Copy after login

Output

Deleted
Copy after login
Copy after login

delete(string,boolean)

This method is also included in the Directory class. Using this technique will delete the specified directory and any subdirectories and files within that directory, if specified.

public static void Delete (string DirLocation, bool recursive); 
Copy after login

This technique is used to delete the specified directory and any subdirectories and files contained within it. Now, some errors may occur after executing this command.

When the file with the same name and address specified by DirLocation already exists, an IO exception is thrown. Alternatively, the subfolder is read-only. Unauthorized access exceptions are another type of error that can occur. This exception is thrown if the caller does not have the required permissions. Argument Null Exception This error is thrown when DirLocation is null.

The path too long exception is another error that occurs when the given DirLocation, filename, or both exceed the maximum length set in the system. If the DirLocation is missing or cannot be found, a "Directory Not Found" exception occurs. Or the route indicated is wrong.

algorithm

The following algorithm will step by step give the process of writing a program to delete a directory. In this algorithm, we will use Delete(String, Boolean) method.

For example, we will consider that there is a non-empty directory named "csk" in the D drive, which contains a file named "msd". Now, we will use the Delete(String, Boolean) method and delete the "csk" directory.

Step 1 We will use the Directory.delete(String, Boolean) method to delete a directory by passing the directory address.

Step 2 Here true is the boolean value passed when checking if the subdirectory exists.

Step 3 The deletion of the directory we wrote by using Console.Writeline() has been completed.

Example

// A C# program which goes on given address and deletes the non empty directory

// Using Delete(string) method
using System;
using System.IO;
class TutPoint {
   static void Main() {

      // Deleting the non-empty directory by using the Delete() method
      Directory.Delete("D:/csk",true);
      Console.WriteLine("Deleted");
   }
}
Copy after login

Output

Deleted
Copy after login
Copy after login

time complexity

In the algorithm we use a single function of the Directory class. Here, the time complexity of Delete(String) will be O(1) and the time complexity of Delete(String, Boolean) will also be O(1).

in conclusion

We have extensively discussed C# programs to delete empty and non-empty directories. First, we discussed the definition of directories and their uses. We then discussed deleting directories in two different ways. Finally, we saw the algorithm and example code. We hope this article helped you enhance your knowledge about C#.

The above is the detailed content of C# program to delete empty and non-empty directories. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template