


Program C# untuk mendapatkan semua fail hadir dalam direktori
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);
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 2−Kami mendapat senarai fail dengan menggunakan GetFiles() dan menyimpannya dalam tatasusunan bernama fyles.
Langkah 3−Akhir 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
Outputusing 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)); } }
abrew.txt
zuma.txt
Salin selepas log masukSalin selepas log masukSalin selepas log masukSalin 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 abrew.txt zuma.txt
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 2−Kami mendapat senarai fail dalam direktori dan subdirektorinya dengan menggunakan SearchOption.AllDirectories dan menyimpannya dalam tatasusunan bernama fyles.
Langkah 3−Akhir 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
Outputusing 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)); } }
abrew.txt
zuma.txt
Salin selepas log masukSalin selepas log masukSalin selepas log masukSalin 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. abrew.txt zuma.txt
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);
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 3−Akhir 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)); } }
输出
abrew.txt zuma.txt
在这个方法中,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);
另一个选择是利用 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)); } }
输出
abrew.txt zuma.txt
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



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 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.

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.

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 ().

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.

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.

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.

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.
