Faili käsitlemine C#-s: I/O Operasioonid [näited]
⚡ Nutikas kokkuvõte
C# failioperatsioonid võimaldavad faile lugeda, kirjutada, kopeerida ja kustutada, kasutades nimeruumi System.IO. Siin õpid selgete koodinäidete abil kasutama funktsioone File.Exists, File.ReadAllLines, File.ReadAllText, File.Copy ja File.Delete.

C#-l on lai valik failioperatsioone. Need toimingud hõlmavad faili avamist, faili lugemist või kirjutamist. Võib juhtuda, et soovite failidega otse töötada, sel juhul kasutaksite C#-s saadaolevaid failitoiminguid. Mõned põhilised failitoimingud on loetletud allpool.
- Lugemine – see toiming on põhiline lugemisoperatsioon, mille käigus andmeid loetakse failist.
- Kirjutamine – see toiming on põhiline kirjutamisoperatsioon, mille käigus andmed kirjutatakse faili. Vaikimisi eemaldatakse failist kogu olemasolev sisu ja kirjutatakse uus sisu.
- Lisamine – see toiming hõlmab ka teabe kirjutamist faili. Ainus erinevus seisneb selles, et failis olevaid andmeid üle ei kirjutata. Uued kirjutatavad andmed lisatakse faili lõppu.
Põhilised I/O-käsud
C# ja .Net saavad failidega töötada mitme File I/O käsu abil. Vaatame mõnda neist käskudest. Meie näite puhul eeldame, et meil on D-draivis fail nimega Example.txt.
Fail on lihtne tekstifail ja sellel on 2 rida, nagu allpool näidatud
- Guru99 – .Net
- Guru99 -C#
Meie näites loome lihtsa konsoolirakenduse ja töötame oma File I/O käskudega. Konsoolirakendus on põhirakendus, mis loodi eelmises õpetuses. Konsoolirakenduses kirjutatakse kogu kood faili program.cs.
Fail.Olemas
Faili olemasolu meetodit kasutatakse konkreetse faili olemasolu kontrollimiseks. Vaatame nüüd koodi, mille abil saab kontrollida, kas fail Näide.txt on olemas või mitte. Sisestage allolev kood faili program.cs.
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { static void Main(string[] args) { String path = @"D:\Example.txt"; if (File.Exists(path)) { Console.WriteLine("File Exists"); } Console.ReadKey(); } } }
Code Selgitus:-
- Esiteks määrame stringi muutuja, mille tee on meie faili Example.txt.
- Järgmiseks kasutame meetodit File.Exists, et kontrollida, kas fail on olemas või mitte. Kui fail on olemas, tagastatakse tegelik väärtus.
- Kui saame tõelise väärtuse ja fail on olemas, kirjutame konsooli teate "Fail on olemas".
Kui ülaltoodud kood on määratud ja projekt käivitatakse Visual Studio abil, saate alloleva väljundi.
Väljund:-
Ülaltoodud väljundist näete, et käsk File.Exists täideti edukalt ja konsooli aknas kuvati õige teade.
File.ReadAlllines
Meetodit kasutatakse faili kõigi ridade ükshaaval lugemiseks. Seejärel salvestatakse read stringi massiivi muutujasse. Vaatame näidet. Sisestage allolev kood faili program.cs.
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { static void Main(string[] args) { String path = @"D:\Example.txt"; String[] lines; lines = File.ReadAllLines(path); Console.WriteLine(lines[0]); Console.WriteLine(lines[1]); Console.ReadKey(); } } }
Code Selgitus:-
- Esiteks deklareerime stringimassiivi muutuja. Seda kasutatakse meetodi File.ReadAllLines abil tagastatava tulemuse salvestamiseks.
- Järgmisena kasutame kõigi tekstifaili ridade lugemiseks meetodit File.ReadAllLines. Seejärel edastatakse tulemus ridade muutujale.
- Kuna me teame, et meie fail sisaldab ainult 2 rida, pääseme massiivimuutujate väärtustele ligi käsu lines[0] ja lines[1] kaudu.
Kui ülaltoodud kood on määratud ja projekti käitatakse kasutades Visual Studio, saate alloleva väljundi.
Väljund:-
Väljundist näete, et käsk File.ReadAllLines tagastas mõlemad read meie failist Näide.txt
File.ReadAllText
Seda meetodit kasutatakse faili kõigi ridade korraga lugemiseks. Seejärel salvestatakse read stringi muutujasse. Vaatame näidet. Sisestage allolev kood faili program.cs.
using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { static void Main(string[] args) { String path = @"D:\Example.txt"; String lines; lines = File.ReadAllText(path); Console.WriteLine(lines); Console.ReadKey(); } } }
Code Selgitus:-
- Esiteks deklareerime stringi muutuja nimega Lines. Seda kasutatakse meetodi File.ReadAllText abil tagastatava tulemuse salvestamiseks.
- Järgmiseks kasutame kõigi tekstifaili ridade lugemiseks meetodit File.ReadAllText. Seejärel edastatakse tulemus ridade muutujale.
- Muutuja Lines väärtuse kuvamiseks saame otse kasutada meetodit Console.Writeline.
Kui ülaltoodud kood on määratud ja projekti käitatakse Visual Studio abil, saate alloleva väljundi.
Väljund:-
Väljundist näete, et käsk File.ReadAlltext tagastas mõlemad read meie failist Näide.txt
Fail.Kopeeri
Meetodit kasutatakse olemasoleva faili koopia tegemiseks. Vaatame näidet. Sisestage allolev kood faili program.cs.
using System; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { static void Main(string[] args) { String path = @"D:\Example.txt"; String copypath = @"D:\ExampleNew.txt"; File.Copy(path,copypath); Console.ReadKey(); } } }
Code Selgitus:-
- Esiteks deklareerime stringi muutuja nimega path. See on meie faili Example.txt asukoht. Sellest failist saab kopeerimise lähtefail.
- Järgmisena deklareerime stringi muutuja nimega copypath. See on uue faili nimega ExampleNew.txt asukoht. See on sihtfail, mille sisu lähtefailist Näide.txt kirjutatakse.
- Seejärel kutsume välja meetodi File.Copy, et kopeerida fail Näide.txt faili NäideNew.txt.
Kui ülaltoodud kood on määratud ja projekti käitatakse Visual Studio abil, kopeeritakse fail Näide.txt faili NäideNew.txt.
Fail.Kustuta
Meetodit kasutatakse olemasoleva faili kustutamiseks. Vaatame näidet. Sisestage allolev kood faili program.cs.
using System; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { static void Main(string[] args) { String path = @"D:\Example.txt"; File.Delete(path); Console.ReadKey(); } } }
Code Selgitus:-
- Esiteks deklareerime stringi muutuja nimega path. See on meie faili Example.txt asukoht. See on fail, mis kustutatakse.
- Järgmisena kutsume faili kustutamiseks välja meetodi File.Delete.
Kui ülaltoodud kood on määratud ja projekti käitatakse Visual Studio abil, kustutatakse fail Näide.txt D-kettalt.
C# failimeetodite viide
Allolev tabel võtab kokku peamised C# failimeetodid ja igaühe tegevuse.
| Faili meetod | Kirjeldus |
|---|---|
| Fail.Olemas | Faili olemasolu meetodit kasutatakse konkreetse faili olemasolu kontrollimiseks. |
| File.ReadAlllines | Meetodit kasutatakse faili kõigi ridade ükshaaval lugemiseks. |
| File.ReadAllText | Seda meetodit kasutatakse faili kõigi ridade korraga lugemiseks. |
| Fail.Kopeeri | Meetodit kasutatakse olemasoleva faili koopia tegemiseks. |
| Fail.Kustuta | Meetodit kasutatakse olemasoleva faili kustutamiseks. |








