Jadual Kandungan
Pengenalan
Example
输出
3. Directory.GetFileSystemEntries() Method
Algorithm
Conclusion
Rumah pembangunan bahagian belakang Tutorial C#.Net Program C# untuk mendapatkan semua fail hadir dalam direktori

Program C# untuk mendapatkan semua fail hadir dalam direktori

Aug 29, 2023 pm 09:37 PM

C# 程序获取目录中存在的所有文件

Pengenalan

Pada komputer, kita boleh menyimpan fail dalam direktori, juga dikenali sebagai folder Sebuah direktori juga mengandungi pintasan ke direktori dan fail lain Jika kita ingin tahu apa yang semua fail telah disimpan dalam direktori maka C# juga menawarkan cara yang mudah untuk berbuat demikian. Dalam artikel ini, kami akan mempelajari program C# untuk mendapatkan semua fail dalam direktori

Terdapat lebih daripada beberapa cara untuk mengetahui fail yang tersedia dalam direktori Mari kita membincangkannya dalam bahagian yang akan datang

1. kaedah GetFiles()

Untuk mengetahui nama fail yang terdapat dalam direktori yang ditentukan, kami menggunakan kaedah GetFiles().

public static string[] GetFiles (string path); 
Salin selepas log masuk

Kami boleh menggunakan GetFiles() dan GetDirectories() untuk mengetahui fail dan subdirektori dalam direktori yang ditentukan

Parameternya, laluan mutlak atau relatif direktori, ialah rentetan. Dan ia tidak peka huruf besar-besaran. Fungsi ini mengembalikan tatasusunan yang mengandungi senarai nama fail dan laluannya dalam direktori yang ditentukan. Apabila direktori kosong, tatasusunan kosong juga dikembalikan.

Algoritma

Sekarang, mari kita bincangkan algoritma untuk mendapatkan semua fail dalam direktori menggunakan kaedah GetFiles().

Langkah 1 - Mula-mula, kami mengisytiharkan rentetan untuk menyimpan alamat direktori.

Langkah 2Kami mendapat senarai fail dengan menggunakan GetFiles() dan menyimpannya dalam tatasusunan bernama fyles.

Langkah 3Akhir sekali, kami mencetak senarai fail.

Contoh

using System;
using System.IO;
public class Example {
   public static void Main() {
      string directloc = @"D:\mypc\addre";

      // files list from the root directory and prints it
      string[] fyles = Directory.GetFiles(directloc);
      Console.WriteLine(String.Join(Environment.NewLine, fyles));
   }
}
Salin selepas log masuk

Output

abrew.txt
zuma.txt
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Sekarang, untuk mendapatkan butiran jenis fail yang terdapat dalam direktori root iaitu, direktori yang kami cari dan subfoldernya kemudian kami menggunakan corak '*' dan SearchOption.AllDirectories yang mendapatkan semula pelbagai jenis fail yang tersedia dalam direktori dan subdirektorinya

Algoritma untuk SearchOption.AllDirectories

Sekarang, mari kita bincangkan algoritma untuk mendapatkan semua fail dalam direktori dan subdirektorinya menggunakan kaedah SearchOption.AllDirectories

Langkah 1 Mula-mula, kami mengisytiharkan rentetan untuk menyimpan alamat direktori.

Langkah 2Kami mendapat senarai fail dalam direktori dan subdirektorinya dengan menggunakan SearchOption.AllDirectories dan menyimpannya dalam tatasusunan bernama fyles.

Langkah 3Akhir sekali, kami mencetak senarai fail.

Contoh

using System;
using System.IO;

public class Example {
   public static void Main() {
      string directloc = @"D:\mypc\addre";

      // files list from the root directory and its subdirectories and prints it
      string[] fyles = Directory.GetFiles(directloc, "*", SearchOption.AllDirectories);
      Console.WriteLine(String.Join(Environment.NewLine, fyles));

   }
} 
Salin selepas log masuk

Output

abrew.txt
zuma.txt
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Jadi, dengan menggunakan kaedah GetFiles(), kita boleh mengetahui fail dalam direktori dan subdirektorinya. Sekarang, kita beralih ke bahagian seterusnya dan membincangkan kaedah EnumerateFiles untuk memahami fail dalam direktori dan subdirektorinya.

2. kaedah EnumerateFiles

Daripada nama kaedah, kita boleh mengatakan bahawa ini ialah kaedah pemulangan koleksi yang boleh dikira, jadi, kaedah ini mengembalikan koleksi nama fail lengkap yang boleh dikira dalam direktori tertentu yang sepadan dengan carian yang ditentukan pengguna dan juga meneroka folder.

public static System.Collections.Generic.IEnumerable EnumerateFiles (string path, string searchPattern, System.IO.SearchOption searchOption); 
Salin selepas log masuk

Di sini, searchOption ialah parameter yang menunjukkan sama ada carian harus memasukkan hanya laluan semasa atau semua subdirektori. searchPattern ialah rentetan carian yang sepadan dengan nama fail dalam laluan yang ditentukan pengguna. Ia boleh mengandungi laluan literal yang sah dan aksara kad bebas (* dan ?), tetapi ungkapan biasa tidak disokong.

Algoritma

Sekarang, mari kita bincangkan algoritma untuk mendapatkan semua fail dalam direktori menggunakan kaedah Directory.EnumerateFiles()

Langkah 1 Mula-mula, kami mengisytiharkan rentetan untuk menyimpan alamat direktori.

Langkah 2 Kami mendapat senarai fail dalam direktori dan subdirektorinya dengan menggunakan Directory.EnumerateFiles(directloc, "*", SearchOption.AllDirectories) dan menyimpannya dalam pembolehubah bernama fyles.

Langkah 3Akhir sekali, kami mencetak senarai fail.

Example

using System;
using System.IO;
using System.Collections.Generic;

public class Example {
   public static void Main() {
      string directloc = @"D:\mypc\addre";

      // files list from the root directory and its subdirectories and prints it
      var fyles = Directory.EnumerateFiles(directloc, "*", SearchOption.AllDirectories);
      Console.WriteLine(String.Join(Environment.NewLine, fyles)); 
   }
} 
Salin selepas log masuk

输出

abrew.txt
zuma.txt
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

在这个方法中,searchPattern非常重要,因为它是通配符和字面字符的混合。它不允许使用正则表达式。以下是通配符和它们的匹配项。

的中文翻译为:

Wildcard Specifier

Matches

匹配

*(星号)

Zero or more characters in that position

?(question mark)

Exactly one character in that position

If we use '*o' then each file name is checked to end with o. And if we use 'a*' then each file name is checked to start with a. Also when the asterisk wildcard character is used in searchPattern and the name of a three-character file extension, such as "*.txt," this returns files with extensions that have with the stated extension. Now, let’s see another method.

3. Directory.GetFileSystemEntries() Method

This method returns the names of all files and subdirectories that meet the conditions given by the programmer. The syntax for this method is as follows.

public static string[] GetFileSystemEntries (string path); 
Salin selepas log masuk

另一个选择是利用 Directory。GetFileSystemEntries() 方法检索提供路径中所有文件和子目录的名称。它可以使用搜索模式和搜索选项进行重载。当提供了搜索模式时,该方法将其与路径中的文件和文件夹名称进行比较。如果使用了 SearchOption.AllDirectories 选项,它将搜索所有子目录。

Algorithm

现在,让我们讨论使用 Directory.GetFileSystemEntries() 方法获取目录中所有文件的算法。

步骤 1 首先,我们声明一个字符串来存储目录的地址。

第二步 通过使用Directory.GetFileSystemEntries(rootdir, "*", SearchOption.AllDirectories)获取目录及其子目录中的文件列表,并将其存储在一个数组中。

Step 3 Finally, we print the list of files.

Example

using System;
using System.IO;

public class Example {
   public static void Main() {
      string directloc = @"D:\mypc\addre";
      
      // files list from the root directory and its subdirectories and prints it
      string[] fyles = Directory.GetFileSystemEntries(directloc, "*", SearchOption.AllDirectories);
      Console.WriteLine(String.Join(Environment.NewLine, fyles));
   }
} 
Salin selepas log masuk

输出

abrew.txt
zuma.txt
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Conclusion

所以,这篇文章就到这里了。在这篇文章中,我们学习了如何编写一个C#程序来获取目录中的所有文件。我们讨论了不同的方法来实现这个目标。我们还了解了这些方法的算法,并学习了它们的代码。希望这篇文章能够增加你对C#的知识。

Atas ialah kandungan terperinci Program C# untuk mendapatkan semua fail hadir dalam direktori. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan pelbagai simbol dalam bahasa C Cara menggunakan pelbagai simbol dalam bahasa C Apr 03, 2025 pm 04:48 PM

Kaedah penggunaan simbol dalam bahasa C meliputi aritmetik, tugasan, syarat, logik, pengendali bit, dan lain-lain. Operator aritmetik digunakan untuk operasi matematik asas, pengendali tugasan digunakan untuk penugasan dan penambahan, penolakan, pendaraban dan tugasan pembahagian, pengendali keadaan digunakan untuk operasi yang digunakan untuk operasi yang digunakan untuk Operasi Bit untuk Penunjuk null, penanda akhir fail, dan nilai bukan angka.

Perbezaan antara multithreading dan asynchronous C# Perbezaan antara multithreading dan asynchronous C# Apr 03, 2025 pm 02:57 PM

Perbezaan antara multithreading dan asynchronous adalah bahawa multithreading melaksanakan pelbagai benang pada masa yang sama, sementara secara tidak sengaja melakukan operasi tanpa menyekat benang semasa. Multithreading digunakan untuk tugas-tugas yang berintensifkan, sementara asynchronously digunakan untuk interaksi pengguna. Kelebihan multi-threading adalah untuk meningkatkan prestasi pengkomputeran, sementara kelebihan asynchronous adalah untuk tidak menghalang benang UI. Memilih multithreading atau asynchronous bergantung kepada sifat tugas: tugas-tugas intensif pengiraan menggunakan multithreading, tugas yang berinteraksi dengan sumber luaran dan perlu menyimpan respons UI menggunakan asynchronous.

Apakah peranan char dalam c strings Apakah peranan char dalam c strings Apr 03, 2025 pm 03:15 PM

Dalam C, jenis char digunakan dalam rentetan: 1. Simpan satu watak; 2. Gunakan array untuk mewakili rentetan dan berakhir dengan terminator null; 3. Beroperasi melalui fungsi operasi rentetan; 4. Baca atau output rentetan dari papan kekunci.

Cara menggunakan array char dalam bahasa c Cara menggunakan array char dalam bahasa c Apr 03, 2025 pm 03:24 PM

Arus char menyimpan urutan watak dalam bahasa C dan diisytiharkan sebagai array_name char [saiz]. Unsur akses diluluskan melalui pengendali subskrip, dan elemen berakhir dengan terminator null '\ 0', yang mewakili titik akhir rentetan. Bahasa C menyediakan pelbagai fungsi manipulasi rentetan, seperti strlen (), strcpy (), strcat () dan strcmp ().

Cara Mengendalikan Watak Khas dalam Bahasa C Cara Mengendalikan Watak Khas dalam Bahasa C Apr 03, 2025 pm 03:18 PM

Dalam bahasa C, watak -watak khas diproses melalui urutan melarikan diri, seperti: \ n mewakili rehat garis. \ t bermaksud watak tab. Gunakan urutan melarikan diri atau pemalar watak untuk mewakili watak khas, seperti char c = '\ n'. Perhatikan bahawa backslash perlu melarikan diri dua kali. Platform dan penyusun yang berbeza mungkin mempunyai urutan melarikan diri yang berbeza, sila rujuk dokumentasi.

Cara menukar char dalam bahasa c Cara menukar char dalam bahasa c Apr 03, 2025 pm 03:21 PM

Dalam bahasa C, penukaran jenis char boleh ditukar secara langsung kepada jenis lain dengan: Casting: Menggunakan aksara pemutus. Penukaran Jenis Automatik: Apabila satu jenis data dapat menampung jenis nilai lain, pengkompil secara automatik menukarkannya.

Apakah fungsi jumlah bahasa C? Apakah fungsi jumlah bahasa C? Apr 03, 2025 pm 02:21 PM

Tiada fungsi jumlah terbina dalam dalam bahasa C, jadi ia perlu ditulis sendiri. Jumlah boleh dicapai dengan melintasi unsur -unsur array dan terkumpul: Versi gelung: SUM dikira menggunakan panjang gelung dan panjang. Versi Pointer: Gunakan petunjuk untuk menunjuk kepada unsur-unsur array, dan penjumlahan yang cekap dicapai melalui penunjuk diri sendiri. Secara dinamik memperuntukkan versi Array: Perlawanan secara dinamik dan uruskan memori sendiri, memastikan memori yang diperuntukkan dibebaskan untuk mengelakkan kebocoran ingatan.

Perbezaan antara char dan wchar_t dalam bahasa c Perbezaan antara char dan wchar_t dalam bahasa c Apr 03, 2025 pm 03:09 PM

Dalam bahasa C, perbezaan utama antara char dan wchar_t adalah pengekodan aksara: char menggunakan ASCII atau memanjangkan ASCII, WCHAR_T menggunakan unicode; Char mengambil 1-2 bait, wchar_t mengambil 2-4 bait; Char sesuai untuk teks bahasa Inggeris, WCHAR_T sesuai untuk teks berbilang bahasa; CHAR disokong secara meluas, WCHAR_T bergantung kepada sama ada penyusun dan sistem operasi menyokong Unicode; Char adalah terhad dalam pelbagai watak, WCHAR_T mempunyai pelbagai watak yang lebih besar, dan fungsi khas digunakan untuk operasi aritmetik.

See all articles