파일 작업을 수행하는 것은 프로그래머 생활의 필수적인 부분이며 모든 프로그래밍 언어는 이를 달성하기 위해 다양한 라이브러리나 기능을 제공합니다. File 클래스 공급자에서 사용할 수 있는 메서드를 사용하여 C#에서도 동일한 작업을 수행할 수 있습니다. 일반적으로 파일 읽기는 ReadAllText(file) 및 ReadAllLines(file) 두 가지 방법을 사용하여 수행됩니다. 여기서 파일은 읽어야 하는 파일을 나타냅니다. Streamreader를 사용하여 파일을 바이트로 읽을 수도 있습니다. 이 문서에서는 적절한 예제와 함께 C#에서 파일을 읽는 데 사용할 수 있는 다양한 방법을 자세히 다룰 것입니다.
구문:
ReadAllText()의 구문은 다음과 같습니다
public static string ReadAllText (String Path, System.Text.Encoding encoding)
ReadAllLines()의 구문은 다음과 같습니다
public static string ReadAllLines(String, Encoding)
이 방법은 파일에 있는 모든 줄을 읽어서 문자열로 저장한 후 파일을 닫습니다.
이 메소드의 반환 유형은 파일의 모든 내용을 포함하는 문자열입니다. 이 메서드는 System.IO 네임스페이스에서 사용할 수 있으며 이 메서드와 연결된 어셈블리는 mscorlib.dll입니다.
ReadAllLines() 메서드의 ReadAllText()와 관련된 예외:
아래에 언급된 예시는 다음과 같습니다.
코드:
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); } } }
출력:
코드:
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); } } } }
출력:
1. StreamReader.ReadToEnd(): 이 메서드는 현재 위치부터 스트림 끝까지 파일을 읽는 데 사용됩니다. 이 메서드에 해당하는 네임스페이스는 System.Io이고 어셈블리는 mscorblib.dll입니다.
구문:
public override string ReadToEnd ();
입력 매개변수: 이 방법에는 입력 매개변수가 필요하지 않습니다.
반환: 이 메소드는 파일 내용을 스트림으로 출력하며, 현재 위치가 파일의 마지막 문자로 설정된 경우 빈 문자열이 반환됩니다.
2. StreamReader.ReadLine(): 이 메서드는 현재 스트림에서 문자를 읽고 데이터를 문자열로 출력에 보냅니다. 이 메서드에 해당하는 네임스페이스는 System.Io이고 어셈블리는 mscorblib.dll입니다.
구문:
public override string ReadLine();
입력 매개변수: 이 방법에는 입력 매개변수가 필요하지 않습니다.
반환: 현재 스트림의 다음 줄을 반환하며, 현재 스트림이 마지막 줄 위치에 있으면 null이 반환됩니다.
코드:
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); } }
출력:
코드:
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); } } }
출력:
코드:
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(); } } }
출력:
코드:
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); } }
출력:
따라서 이 기사에서는 C#의 파일 읽기 기능을 자세히 다루었습니다. 작업을 수행하는 데 사용할 수 있는 다양한 방법을 설명했습니다. 또한 각 메소드와 연관된 다양한 매개변수 및 예외사항을 다루고 샘플 프로그램의 예와 함께 자세히 설명했습니다. 좀 더 자세하게 다루려면 샘플 프로그램을 작성하고 실습해 보는 것이 좋습니다.
위 내용은 C# 파일 읽기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!