Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C# untuk memadam direktori kosong dan tidak kosong

Program C# untuk memadam direktori kosong dan tidak kosong

PHPz
PHPzke hadapan
2023-08-29 12:57:021391semak imbas

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

Pengenalan

Pada komputer, kita boleh menyimpan fail dalam direktori, juga dikenali sebagai folder. Direktori juga mengandungi pintasan ke direktori dan fail lain. Di sini, kita akan membincangkan program C# untuk memadam direktori kosong dan tidak kosong. Kelas statik bernama Direktori menyediakan kaedah statik untuk bekerja dengan direktori. Objek DirectoryInfo memberikan maklumat terperinci tentang direktori tertentu.

Padam direktori kosong dan tidak kosong

Sekarang kita mempunyai direktori (kosong atau tidak) kita perlu memadamkannya. Direktori kosong bermakna tiada fail atau subdirektori wujud dalam direktori. Direktori boleh dianggap sebagai kumpulan fail dan subdirektori mungkin mengandungi data atau tidak. Direktori yang mengandungi fail atau direktori lain dipanggil direktori bukan kosong. Menggunakan kaedah Delete() kelas Direktori, kita boleh memadamkan direktori. Kaedah ini mempunyai dua kaedah overloading -

  • padam(rentetan)

  • padam(rentetan,boolean)

padam(rentetan)

Kaedah ini termasuk dalam kelas Direktori. Teknik ini digunakan untuk memadam direktori kosong. Kaedah ini memadamkan direktori daripada alamat atau lokasi yang ditentukan.

public static void Delete (string DirLocation); 

Di mana DirLocation ialah alamat direktori yang telah disediakan dan kami ingin padamkan, jenis parameter ini ialah rentetan. Kini, beberapa ralat mungkin berlaku selepas melaksanakan arahan ini.

Apabila fail dengan nama dan alamat yang sama yang ditentukan oleh DirLocation sudah wujud, pengecualian IO akan dilemparkan. Sebagai alternatif, subfolder adalah baca sahaja. Pengecualian akses tanpa kebenaran ialah satu lagi jenis ralat yang boleh berlaku. Pengecualian ini dilemparkan jika pemanggil tidak mempunyai kebenaran yang diperlukan. Argument Null Exception Ralat ini dilemparkan apabila DirLocation adalah batal. Pengecualian Laluan Terlalu Panjang ialah ralat lain yang boleh berlaku apabila DirLocation, nama fail, atau kedua-duanya melebihi panjang maksimum yang ditentukan sistem. Jika DirLocation hilang atau tidak ditemui, pengecualian "Direktori Tidak Ditemui" berlaku. Atau laluan yang ditunjukkan adalah salah.

Algoritma

Algoritma di bawah akan memberikan langkah demi langkah proses menulis atur cara untuk memadam direktori. Dalam algoritma ini, kami akan menggunakan kaedah Delete(String).

Sebagai contoh, kami akan mempertimbangkan direktori kosong yang dipanggil "csk". Sekarang, kami akan menggunakan kaedah Delete(String) dan padam direktori "csk".

Langkah 1 - Kami akan menggunakan kaedah Directory.delete untuk memadam direktori dengan menghantar alamat direktori.

Langkah 2 Pemadaman direktori yang kami tulis telah selesai dengan menggunakan Console.Writeline().

Contoh

// 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");
   }
}

Output

Deleted

padam(rentetan,boolean)

Kaedah ini juga termasuk dalam kelas Direktori. Menggunakan teknik ini akan memadamkan direktori yang ditentukan dan mana-mana subdirektori dan fail dalam direktori itu, jika dinyatakan.

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

Teknik ini digunakan untuk memadam direktori tertentu dan mana-mana subdirektori dan fail yang terkandung di dalamnya. Kini, beberapa ralat mungkin berlaku selepas melaksanakan arahan ini.

Apabila fail dengan nama dan alamat yang sama yang ditentukan oleh DirLocation sudah wujud, pengecualian IO akan dilemparkan. Sebagai alternatif, subfolder adalah baca sahaja. Pengecualian akses tanpa kebenaran ialah satu lagi jenis ralat yang boleh berlaku. Pengecualian ini dilemparkan jika pemanggil tidak mempunyai kebenaran yang diperlukan. Argument Null Exception Ralat ini dilemparkan apabila DirLocation adalah batal.

Pengecualian laluan yang terlalu panjang ialah satu lagi ralat yang berlaku apabila DirLocation, nama fail atau kedua-duanya melebihi panjang maksimum yang ditetapkan dalam sistem. Jika DirLocation hilang atau tidak ditemui, pengecualian "Direktori Tidak Ditemui" berlaku. Atau laluan yang ditunjukkan adalah salah.

Algoritma

Algoritma di bawah akan memberikan langkah demi langkah proses menulis atur cara untuk memadam direktori. Dalam algoritma ini, kami akan menggunakan kaedah Delete(String, Boolean).

Sebagai contoh, kami akan menganggap bahawa terdapat direktori bukan kosong bernama "csk" dalam pemacu D, yang mengandungi fail bernama "msd". Sekarang, kami akan menggunakan kaedah Delete(String, Boolean) dan padam direktori "csk".

Langkah 1 Kami akan menggunakan kaedah Directory.delete(String, Boolean) untuk memadamkan direktori dengan menghantar alamat direktori.

Langkah 2 Di sini benar ialah nilai boolean yang diluluskan semasa menyemak sama ada subdirektori itu wujud.

Langkah 3 Dengan menggunakan Console.Writeline() pemadaman direktori yang kami tulis telah selesai.

Contoh

// 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");
   }
}

Output

Deleted

Kerumitan masa

Dalam algoritma kami menggunakan satu fungsi kelas Direktori. Di sini, kerumitan masa Delete(String) akan menjadi O(1) dan kerumitan masa Delete(String, Boolean) juga akan menjadi O(1).

Kesimpulan

Kami telah membincangkan secara meluas program C# untuk memadam direktori kosong dan tidak kosong. Pertama, kami membincangkan definisi direktori dan kegunaannya. Kami kemudian membincangkan dua cara berbeza untuk memadam direktori. Akhirnya, kami melihat algoritma dan kod contoh. Kami berharap artikel ini membantu anda meningkatkan pengetahuan anda tentang C#.

Atas ialah kandungan terperinci Program C# untuk memadam direktori kosong dan tidak kosong. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam