C# File 클래스는 파일 생성, 파일 복사 및 이동, 파일 삭제, 그리고 FileStream을 사용하여 스트림을 읽고 쓰는 등 대부분의 파일 작업을 위한 정적 메서드를 제공합니다. File 클래스는 System.IO 네임스페이스에 정의되어 있습니다.
File 클래스와 Fileinfo 클래스와 다른점은 정적 선언으로 File 을 다룬다는거 외에는 사용법이 같습니다. File 클래스는 인스턴스를 만들거나 new 로 초기화 하지 않고 바로 사용하다는 간편한 방식입니다.
File 클래스
File 클래스는 파일을 복사, 이동 및 삭제하는 데 사용되는 많은 정적 메서드를 노출합니다. 이러한 정적 메서드에는 파일 이동, 복사 및 삭제가 포함됩니다.
다음은 일반적인 File 클래스 메서드 목록입니다.
1. Copy
이 메서드는 파일을 지정된 위치로 복사하는 데 사용됩니다.
2. Create
이 메서드는 지정된 경로에 파일을 생성하는 데 사용됩니다.
3. Delete
이 메서드는 파일을 삭제합니다.
4. Open
이 메서드는 지정된 경로에서 FileStream 개체를 반환합니다.
5. Move
이 메서드는 지정된 파일을 새 위치로 이동합니다. 새 위치에 대해 다른 이름을 지정할 수 있습니다.
6. Exists
지정된 파일이 존재하는지 여부를 확인합니다.
7. OpenRead
기존 파일을 읽기 위해 파일을 엽니다.
8. OpenWrite
기존 파일을 열거나 새 파일을 생성하여 쓰기 위해 파일을 엽니다.
File.Create 메서드
File.Create 메서드는 지정된 폴더에 파일을 생성합니다.
string path = @"D:\MyTestFile1.txt";
FileStream fs = File.Create(path);
{
Byte[] info = new UTF8Encoding(true).GetBytes("이것은 파일 안의 일부 텍스트입니다.");
fs.Write(info, 0, info.Length);
Console.WriteLine("파일이 생성되었습니다.");
}
File.Delete 메서드
File.Delete 메서드는 지정된 폴더에서 주어진 이름의 파일을 삭제합니다.
static void Main(string[] args)
{
string path = @"D:\MyTest1.txt";
File.Delete(path);
Console.WriteLine("파일이 삭제되었습니다.");
}
File.Open 메서드
이 메서드는 지정된 경로에서 FileStream 개체를 반환합니다.
File.Exists 메서드
이 메서드는 지정된 파일이 존재하는지 여부를 확인합니다.
static void Main(string[] args)
{
string path = @"D:\MyTestFile1.txt";
Console.WriteLine(File.Exists(path) ? "파일이 존재합니다." : "파일이 존재하지 않습니다.");
}
File.Copy 메서드
이 메서드는 파일을 지정된 위치로 복사합니다.
static void Main(string[] args)
{
string path = @"D:\MyTestFile1.txt";
string path1 = @"D:\MyTest1.txt";
File.Copy(path, path1);
Console.WriteLine("파일이 복사되었습니다.");
}
File.Move 메서드
이 메서드는 지정된 파일을 새 위치로 이동합니다. 새 위치에 대한 다른 이름을 지정할 수 있습니다.
static void Main(string[] args)
{
string path = @"D:\MyTestFile1.txt";
string path1 = @"c:\MyTest1.txt";
File.Move(path, path1);
Console.WriteLine("파일이 이동되었습니다.");
}
File.OpenRead 메서드
이 메서드는 기존 파일을 읽기 위해 파일을 엽니다.
public static void Main()
{
string path = @"d:\MyTest1.txt";
if (!File.Exists(path))
{
// 파일 생성
using (FileStream fs = File.Create(path))
{
Byte[] info = new UTF8Encoding(true).GetBytes("이것은 파일입니다.");
fs.Write(info, 0, info.Length);
}
}
using (FileStream fs = File.OpenRead(path))
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b, 0, b.Length) > 0)
{
Console.WriteLine(temp.GetString(b));
}
}
}
결론
이 포스트에서는 C# File 클래스를 사용하여 파일을 생성하고 액세스하는 방법을 알려드렸습니다. File 클래스는 파일 작업에 매우 유용합니다.