<:> Soalan:
bagaimana membaca fail teks dalam kecekapan tinggi dalam c# .net?
Jawapan:
Mengikut keperluan khusus, terdapat banyak cara untuk mengoptimumkan bacaan fail.
Gunakan Streamreader.Readline:
berbanding dengan 128 bait penimbal, menggunakan Streamreader dan menetapkan saiz penampan yang sesuai (mis., Lalai 1024 atau lebih besar) dapat meningkatkan prestasi dengan ketara.
Ini adalah kaedah pengganti untuk pengoptimuman untuk pemprosesan baris, yang mengelakkan memori yang mengambil semua baris pada masa yang sama.
using (var fileStream = File.OpenRead(fileName)) using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, 1024)) { string line; while ((line = streamReader.ReadLine()) != null) { // 处理每一行 } }
Walaupun rentetan [] dikembalikan, kaedah ini lebih banyak permintaan untuk memori daripada kaedah di atas. Walau bagaimanapun, ia membolehkan akses rawak.
var lines = File.ReadLines(fileName); foreach (var line in lines) // 处理每一行
Gunakan string.split:
var lines = File.ReadAllLines(fileName); for (var i = 0; i < lines.Length; i++) // 处理每一行
Atas ialah kandungan terperinci Bagaimanakah saya dapat membaca garis fail teks dengan cekap di C# .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!