Computer >> Máy Tính >  >> Lập trình >> C#

Một số cách nhanh nhất để đọc từng dòng một tệp văn bản bằng C # là gì?

Có một số cách để đọc từng dòng một tệp văn bản. Chúng bao gồmStreamReader.ReadLine, File.ReadLines, v.v. Hãy để chúng tôi xem xét một tệp văn bản có trong máy tính của chúng tôi có các dòng như dưới đây.

Một số cách nhanh nhất để đọc từng dòng một tệp văn bản bằng C # là gì?

Sử dụng StreamReader.ReadLine -

C # StreamReader được sử dụng để đọc các ký tự cho một luồng trong một mã hóa được chỉ định. Phương thứcStreamReader.Read đọc ký tự tiếp theo hoặc nhóm ký tự tiếp theo từ luồng đầu vào. StreamReader được kế thừa từ TextReader cung cấp các phương thức để đọc một ký tự, khối, dòng hoặc tất cả nội dung.

Ví dụ

using System;
using System.IO;
using System.Text;
namespace DemoApplication{
   public class Program{
      static void Main(string[] args){
         using (var fileStream = File.OpenRead(@"D:\Demo\Demo.txt"))
         using (var streamReader = new StreamReader(fileStream, Encoding.UTF8)){
            String line;
            while ((line = streamReader.ReadLine()) != null){
               Console.WriteLine(line);
            }
         }
         Console.ReadLine();
      }
   }
}

Đầu ra

Hi All!!
Hello Everyone!!
How are you?

Sử dụng File.ReadLines

Phương thức File.ReadAllLines () mở một tệp văn bản, đọc tất cả các dòng của tệp thành aIEnumerable , sau đó đóng tệp.

Ví dụ

using System;
using System.IO;
namespace DemoApplication{
   public class Program{
      static void Main(string[] args){
         var lines = File.ReadLines(@"D:\Demo\Demo.txt");
         foreach (var line in lines){
            Console.WriteLine(line);
         }
         Console.ReadLine();
      }
   }
}

Đầu ra

Hi All!!
Hello Everyone!!
How are you?

Sử dụng File.ReadAllLines

Điều này rất giống với ReadLines. Tuy nhiên, nó trả về Chuỗi [] chứ không phải có thể đếm được cho phép chúng tôi truy cập ngẫu nhiên vào các dòng.

Ví dụ

using System;
using System.IO;
namespace DemoApplication{
   public class Program{
      static void Main(string[] args){
         var lines = File.ReadAllLines(@"D:\Demo\Demo.txt");
         for (var i = 0; i < lines.Length; i += 1){
            var line = lines[i];
            Console.WriteLine(line);
         }
         Console.ReadLine();
      }
   }
}

Đầu ra

Hi All!!
Hello Everyone!!
How are you?