방법: 텍스트 파일에 쓰기(C# 프로그래밍 가이드)
다음 코드 예제에서는 파일에 텍스트를 쓰는 여러 가지 방법을 보여 줍니다.처음 두 예제에서는 System.IO.File 클래스의 정적 메서드를 사용하여 전체 문자열 배열 또는 전체 문자열을 텍스트 파일에 씁니다.세 번째 예제에서는 파일에 쓰기 전에 각 줄을 개별적으로 처리해야 경우 파일에 텍스트를 추가하는 방법을 보여 줍니다.이 세 예제 모두 파일의 모든 기존 내용을 덮어씁니다.네 번째 예제에서는 기존 파일에 텍스트를 덧붙이는 방법을 보여 줍니다.
예제
class WriteTextFile
{
static void Main()
{
// These examples assume a "C:\Users\Public\TestFolder" folder on your machine.
// You can modify the path if necessary.
// Example #1: Write an array of strings to a file.
// Create a string array that consists of three lines.
string[] lines = {"First line", "Second line", "Third line"};
System.IO.File.WriteAllLines(@"C:\Users\Public\TestFolder\WriteLines.txt", lines);
// Example #2: Write one string to a text file.
string text = "A class is the most powerful data type in C#. Like structures, " +
"a class defines the data and behavior of the data type. ";
System.IO.File.WriteAllText(@"C:\Users\Public\TestFolder\WriteText.txt", text);
// Example #3: Write only some strings in an array to a file.
using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\Public\TestFolder\WriteLines2.txt"))
{
foreach (string line in lines)
{
// If the line doesn't contain the word 'Second', write the line to the file.
if (!line.Contains("Second"))
{
file.WriteLine(line);
}
}
}
// Example #4: Append new text to an existing file
using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\Users\Public\TestFolder\WriteLines2.txt", true))
{
file.WriteLine("Fourth line");
}
}
}
/* Output (to WriteLines.txt):
First line
Second line
Third line
Output (to WriteText.txt):
A class is the most powerful data type in C#. Like structures, a class defines the data and behavior of the data type.
Output to WriteLines2.txt after Example #3:
First line
Third line
Output to WriteLines2.txt after Example #4:
First line
Third line
Fourth line
*/
코드 컴파일
코드를 콘솔 응용 프로그램에 복사합니다.
"c:\testdir"을 컴퓨터의 실제 폴더 이름으로 바꾸거나 같은 이름의 폴더를 만듭니다.
강력한 프로그래밍
다음 조건에서 예외가 발생할 수 있습니다.
파일이 있지만 읽기 전용인 경우
경로 이름이 너무 긴 경우
디스크가 꽉 찬 경우