Melaksanakan operasi fail adalah bahagian penting dalam kehidupan pengaturcara dan semua bahasa pengaturcaraan menyediakan pelbagai perpustakaan atau fungsi untuk mencapai perkara yang sama. Perkara yang sama boleh dilakukan dalam C# menggunakan kaedah yang tersedia dalam pembekal kelas Fail. Secara umumnya membaca daripada fail dilakukan menggunakan dua kaedah ReadAllText(fail) dan ReadAllLines(fail), di mana fail menandakan fail yang perlu dibaca. Fail juga boleh dibaca menggunakan Streamreader sebagai bait. Artikel ini akan membincangkan secara terperinci pelbagai kaedah yang tersedia dalam C# untuk membaca fail bersama-sama dengan contoh yang sesuai.
Sintaks:
ReadAllText() mempunyai sintaks berikut
public static string ReadAllText (String Path, System.Text.Encoding encoding)
ReadAllLines() mempunyai sintaks berikut
public static string ReadAllLines(String, Encoding)
Kaedah ini membaca semua baris yang terdapat dalam fail dan kemudian menyimpannya dalam rentetan dan kemudian menutup fail.
Jenis pemulangan kaedah ini ialah rentetan yang mempunyai semua kandungan dalam fail. Kaedah ini tersedia dalam ruang nama System.IO dan pemasangan yang dikaitkan dengan kaedah ini ialah mscorlib.dll.
Pengecualian yang dikaitkan dengan ReadAllText() kaedah ReadAllLines():
Berikut ialah contoh berikut yang dinyatakan di bawah.
Kod:
using System; using System.IO; using System.Text; namespace ReadAllText { class Test { static void Main(string[] args) { var Fpath= @"C:\Vignesh\KB.txt"; string content = File.ReadAllText(Fpath, Encoding.UTF8); Console.WriteLine(content); } } }
Output:
Kod:
using System; using System.IO; using System.Text; namespace ReadAllLines { class Test { static void Main(string[] args) { var inputfile = @"C:\Vignesh\append.txt"; string[] output = File.ReadAllLines(inputfile, Encoding.UTF8); foreach (string op in output) { Console.WriteLine(op); } } } }
Output:
1. StreamReader.ReadToEnd(): Kaedah ini digunakan untuk membaca fail dari kedudukan semasa ke penghujung strim. Ruang nama yang sepadan untuk kaedah ini ialah System.Io dan pemasangan ialah mscorblib.dll.
Sintaks:
public override string ReadToEnd ();
Parameter Input: Kaedah ini tidak memerlukan sebarang parameter input.
Pengembalian: Kaedah ini mengeluarkan kandungan fail sebagai strim, jika kedudukan semasa ditetapkan kepada aksara terakhir fail, rentetan kosong dikembalikan.
2. StreamReader.ReadLine(): Kaedah ini membaca aksara daripada strim semasa dan menghantar data sebagai rentetan kepada output. Ruang nama yang sepadan untuk kaedah ini ialah System.Io dan pemasangan ialah mscorblib.dll.
Sintaks:
public override string ReadLine();
Parameter Input: Kaedah ini tidak memerlukan sebarang parameter input.
Pulangan: Ia mengembalikan baris seterusnya ke strim semasa, jika strim semasa berada di kedudukan baris terakhir maka null dikembalikan.
Kod:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var FP = @"C:\Vignesh\Names.txt"; using var fstre = new FileStream(FP, FileMode.Open, FileAccess.Read); using var sree = new StreamReader(fstre, Encoding.UTF8); string Fcontent = sree.ReadToEnd(); Console.WriteLine(Fcontent); } }
Output:
Kod:
using System; using System.IO; using System.Text; class Program { static void Main(string[] args) { var filpath = @"C:\Vignesh\TimerJob-2019-08-09.txt"; using var fstre = new FileStream(filpath, FileMode.Open, FileAccess.Read); using var sreee = new StreamReader(fstre, Encoding.UTF8); string cline = String.Empty; while ((cline = sreee.ReadLine()) != null) { Console.WriteLine(cline); } } }
Output:
Kod:
using System; using System.IO; namespace testclass { class Test { string FPath = @ "C:\Vignesh\Script to 0365 connection.txt"; static void Main(string[] args) { //Check if file is there at the path //ReadallOutput() if (File.Exists(FPath)) { string output = File.ReadAlloutput(FPath); Console.WriteLine(output); } //Check if file is there at the path if (File.Exists(FPath)) { //ReadallLines() string[] Flines = File.ReadAllFlines(FPath); foreach(string line in Flines) Console.WriteLine(line); } //Check if file is there at the path if (File.Exists(FPath)) { //using streamreader using(StreamReader file = new StreamReader(FPath)) { int counter = 0; string lgth; while ((lgth = file.ReadLine()) != null) { Console.WriteLine(lgth); counter++; } file.Close(); } } Console.ReadKey(); } } }
Output:
Kod:
using System; using System.IO; using System.Text; using System.Threading.Tasks; class TestProgram { static async Task Main(string[] args) { var ip = @" C:\Vignesh\Patching\Patching Steps.txt"; using var fssss = new FileStream(ip, FileMode.Open, FileAccess.Read); using var srrr = new StreamReader(fssss, Encoding.UTF8); //Reading asynchronously string op = await srrr.ReadToEndAsync(); Console.WriteLine(op); } }
Output:
Oleh itu, artikel merangkumi secara terperinci fungsi fail baca dalam c#. Ia menerangkan pelbagai kaedah yang tersedia untuk melaksanakan operasi. Ia juga merangkumi pelbagai parameter dan pengecualian yang dikaitkan dengan setiap kaedah dan dijelaskan secara terperinci bersama-sama dengan contoh program sampel. Untuk menjelaskan dengan lebih terperinci, anda dinasihatkan untuk menulis contoh program dan mempraktikkannya.
Atas ialah kandungan terperinci C# Baca Fail. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!