Mari kita belajar cara menulis program C# untuk menyemak sama ada laluan ialah direktori atau fail. Direktori, juga dipanggil folder, ialah lokasi pada komputer anda di mana fail boleh disimpan. Selain fail, direktori juga mengandungi direktori atau pintasan lain.
Fail ialah koleksi data pada pemacu dengan pengecam unik dan laluan direktori. Apabila fail dibuka untuk dilihat atau ditulis, ia ditukar kepada strim. Strim hanyalah urutan bait yang melintasi laluan komunikasi.
Fail ialah fail data sebenar, manakala direktori ialah repositori tempat fail logik diletakkan pada sistem. Untuk mengendalikan fail dan direktori, masa jalan bahasa biasa (CLR) mempunyai kelas Fail, FileInfo, Direktori dan DirectoryInfo dalam ruang nama System.IO.
Untuk mengendalikan direktori dalam C#, kami boleh menggunakan Directory atau DirectoryInfo. Kelas Direktori ialah kelas statik dengan fungsi statik untuk mengendalikan direktori. Kelas ini tidak boleh diwarisi. Kejadian DirectoryInfo memberikan maklumat tentang direktori tertentu.
Sesuatu folder mempunyai kelas fail dan kelas maklumat fail. Kelas Fail digunakan untuk melaksanakan tugas biasa seperti menyalin, mengalih, menamakan semula, mencipta, membuka, memadam dan menambah pada satu fail. Kelas Fail juga boleh digunakan untuk mendapatkan dan menukar ciri fail atau maklumat tarikh masa yang berkaitan dengan penciptaan, akses dan penulisan fail. Kedua-dua kelas Fail dan FileInfo mempunyai fungsi asas yang sama.
Satu-satunya perbezaan ialah kelas Fail mempunyai kaedah dalaman untuk mengendalikan fail, manakala kelas FileInfo mempunyai kaedah contoh untuk mengendalikan fail.
Bool statik awam wujud (String? Path) digunakan untuk menyemak sama ada fail atau direktori wujud. Adakah parameter di sini rentetan? laluan. Ini adalah laluan untuk menyemak. Jenis pulangannya ialah boolean. Sebab fungsi ini adalah boolean ialah apabila menyemak laluan, hanya terdapat dua hasil. Fail atau direktori sama ada wujud atau tidak wujud, sama seperti kata kunci fungsi. Jadi ia mengembalikan benar jika direktori atau fail wujud dan palsu jika ia tidak wujud atau sebarang jenis ralat berlaku semasa cuba mengakses alamat (seperti alamat rosak atau lebih).
Algoritma di bawah akan memberikan proses langkah demi langkah untuk menulis atur cara untuk menyemak sama ada laluan yang diberikan ialah direktori atau fail.
Langkah 1 - Mula-mula kita perlu mengisytiharkan rentetan yang mengandungi alamat di mana kita ingin menyemak sama ada ia adalah fail atau direktori
Langkah 2 − Kemudian pemeriksaan syarat mesti dilakukan, kita menggunakan kaedah public static bool Exists (string? path); untuk menyemak sama ada fail itu wujud.
Langkah 3 − Terserah sepenuhnya kepada pengaturcara untuk memutuskan perkara yang ingin disemak terlebih dahulu. Adakah dia mahu menyemak laluan fail atau direktori.
Langkah 4 −Jika laluan gagal kedua-dua semak, output ialah laluan tidak sah dan dipaparkan sebagai mesej.
// 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
Kod di atas menyemak sama ada laluan yang disediakan ialah fail. Pertama dalam kod kami mengisytiharkan rentetan untuk menyimpan alamat untuk menyemak sama ada ia adalah fail atau direktori. Kemudian kami menggunakan public static bool Exists(string?path); yang boleh digunakan dengan kelas Fail dan Direktori untuk menyemak sama ada fail atau direktori wujud dengan menggunakan kata kunci kelas yang sepadan. Ini boleh dilakukan dengan menggunakan pemeriksaan bersyarat. Jika orang ingin melakukan semakan kelompok, mereka boleh menghantar tatasusunan alamat sebagai parameter dengan membuat kelas. Kemudian semak satu persatu. Memandangkan bool statik awam Wujud (string?path); sebab kami melakukan semakan bersyarat.
Ruang jejak akan dialih keluar dari hujung parameter laluan sebelum mengesahkan bahawa direktori itu wujud.
Sensitiviti kes bagi parameter laluan adalah berkaitan dengan sistem fail tempat kod tersebut dilaksanakan. Contohnya, NTFS (sistem fail Windows biasa) tidak sensitif huruf besar-besaran, manakala sistem fail Linux sensitif huruf besar-kecil.
Dalam algoritma selepas mengisytiharkan rentetan. public static bool Wujud (string?path); Kaedah ini ialah kaedah pengembalian Boolean. Kerana ia membuat satu panggilan terus ke elemen yang kami cari, kerumitan masa algoritma ini ialah O(1).
Jadi, kami telah sampai ke penghujung artikel dan kami telah mempelajari cara menyemak sama ada laluan yang disediakan ialah direktori atau fail. Kami bermula dengan definisi fail dan direktori dan kemudian teruskan untuk memahami perbezaan antara fail dan direktori. Kemudian kami belajar tentang algoritma program dan selepas itu kami melihat program untuk menyemak laluan. Kami berharap artikel ini telah meningkatkan pemahaman anda tentang C#.
Atas ialah kandungan terperinci Program C# untuk menyemak sama ada laluan ialah direktori atau fail. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!