Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C# StreamReader

C# StreamReader

WBOY
WBOYasal
2024-09-03 15:23:26230semak imbas

Untuk membaca aksara ke dalam aliran yang mengikuti pengekodan tertentu, kami menggunakan kelas yang dipanggil kelas StreamReader dalam C# dan kaedah StreamWriter.Read() kelas StreamReader bertanggungjawab untuk membaca aksara seterusnya atau set seterusnya watak daripada aliran. Kelas TextReader ialah kelas asas kelas StreamReader iaitu kelas StreamReader diwarisi daripada kelas TextReader dan kelas TextReader ini menyediakan beberapa kaedah yang boleh digunakan untuk membaca aksara, blok, baris, dll. dan System.IO.namespace ialah ruang nama di mana StreamReader ditakrifkan dan kelas StreamReader menyediakan beberapa kaedah baca seperti Peak, Read, ReadAsync, ReadBlock, ReadBlockAsync, ReadLine, ReadLineAsync, ReadToEnd, ReadToEndAsync, dll.

Sintaks:

Sintaks kelas StreamReader dalam C# adalah seperti berikut:

public class StreamReader: System.IO.TextReader

Fungsi Kelas StreamReader dalam C#

  • Data dibaca daripada fail menggunakan Strim dalam C#.
  • Strim ialah lapisan tambahan antara aplikasi dan fail.
  • Data daripada fail boleh dibaca dengan lancar dengan menggunakan strim.
  • Strim menerima sebahagian kecil data yang dipecahkan daripada fail yang lebih besar. Aplikasi ini boleh membaca sebahagian kecil data ini daripada aliran dan ia tidak perlu membaca semua data terus daripada fail yang lebih besar
  • Terdapat kesan pada prestasi aplikasi jika aplikasi cuba membaca semua data daripada fail yang lebih besar.
  • Oleh itu, data mesti dibaca melalui strim dan bukannya fail besar itu sendiri.

Pertimbangkan contoh di bawah untuk menerangkan penggunaan StreamReader untuk membaca data daripada fail:

Contoh C# StreamReader

Berikut ialah contoh c# streamreader

Contoh #1

Kod:

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//a namespace called program is defined
namespace program
{
//a class called check is defined
class check
{
//main method is called
static void Main(string[] args)
{
//the path of the file and the file name is assigned to a string variable
String def = @"D:\imp.txt";
//an instance of the string writer class is created, and the path of the file is passed as a parameter to append text to the file
using (StreamWriter stwr = File.AppendText(def))
{
//data to be appended to the file is included
stwr.WriteLine("Welcome to StreamWriter class in C#");
//the instance of the streamwriter class is closed after writing data to the File
stwr.Close();
try
{
// an instance of stream reader class is created, and data is read from the file by taking the path of the file as parameter
using (StreamReader read = new StreamReader(def))
{
//a string variable is defined
string line1;
// Data is being read one line after the other
while ((line1 = read.ReadLine()) != null)
{
Console.WriteLine(line1);
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.ReadKey();
}
}
}
}

Output:

C# StreamReader

Dalam atur cara di atas, atur cara ialah ruang nama yang ditakrifkan. Kemudian semak adalah kelas yang ditakrifkan. Kemudian kaedah utama dipanggil. Kemudian pembolehubah rentetan memberikan nama fail dan laluan fail. Kemudian contoh kelas penulis rentetan dibuat, dan laluan fail diluluskan sebagai parameter untuk menulis teks ke fail. Kemudian data yang akan ditulis ke fail disertakan. Kemudian contoh kelas penulis aliran ditutup selepas menulis data ke Fail. Kemudian contoh kelas pembaca strim dicipta, dan data dibaca daripada fail dengan mengambil laluan fail sebagai parameter. Kemudian pembolehubah rentetan ditakrifkan. Kemudian data sedang dibaca satu baris demi satu. Output program adalah seperti yang ditunjukkan dalam syot kilat di atas.

Contoh #2

Program C# untuk menerangkan penggunaan kelas StreamReader:

Kod:

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//a class called check is defined
class check
{
//main method is called
static void Main()
{
String fin = @"D:\Ex.txt"
//an instance of streamwriter class is created and the path of the file is passed as a parameter
using (StreamWriter stwf = new StreamWriter(fin))
{
//write() method of stream writer class is used to write the first line so that the next line continues from here
stwf.Write("Welcome to StreamWriter class in C# and ");
//writeline() method is used to write the second line and the next line starts from a new line
stwf.WriteLine("this program is demonstration of StreamWriter class in C# ");
//writeline() method is used to write the third line and the next line starts from a new line
stwf.WriteLine("I hope you are learning ");
stwf.Dispose();
try
{
// an instance of stream reader class is created, and data is read from the file by taking the path of the file as parameter
using (StreamReader read = new StreamReader(fin))
{
//a string variable is defined
string line1;
// Data is being read one line after the other
while ((line1 = read.ReadLine()) != null)
{
Console.WriteLine(line1);
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.ReadKey();
}
}
}

Output:

C# StreamReader

Dalam atur cara di atas, atur cara ialah ruang nama yang ditakrifkan. Kemudian semak adalah kelas yang ditakrifkan. Kemudian kaedah utama dipanggil. Kemudian pembolehubah rentetan memberikan nama fail dan laluan fail. Kemudian contoh kelas penulis rentetan dibuat, dan laluan fail diluluskan sebagai parameter untuk menulis teks ke fail. Kemudian kaedah write() kelas penulis aliran digunakan untuk menulis baris pertama supaya baris seterusnya diteruskan dari sini. Kemudian kaedah writeline() digunakan untuk menulis baris kedua dan baris seterusnya bermula dari baris baharu. Kemudian kaedah writeline() digunakan untuk menulis baris ketiga dan baris seterusnya bermula dari baris baharu. Kemudian contoh kelas pembaca strim dicipta, dan data dibaca daripada fail dengan mengambil laluan fail sebagai parameter. Kemudian pembolehubah rentetan ditakrifkan. Kemudian Data sedang dibaca satu baris demi satu baris sehingga penghujung baris. Output program adalah seperti yang ditunjukkan dalam syot kilat di atas.

Atas ialah kandungan terperinci C# StreamReader. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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
Artikel sebelumnya:C# StringWriterArtikel seterusnya:C# StringWriter