1. 경로 이름을 구성 요소로 분할하는 방법
Path 클래스에 있는 정적 메서드를 사용하면 파일 이름을 구성 요소로 분할할 수 있다.
var path = @”C:\Program Files\Microsoft Office\Office16\EXCEL.EXE”;
//지정한 경로 문자열에서 디렉터리 정보를 반환
//반환된 경로에는 경로의 마지막에 있는 ‘\’가 포함되지 않는다.
var directoryName = Path.GetDirectoryName(path);
//지정한 경로 문자열에서 파일 이름과 확장자를 반환
var fileName = Path.GetFileName(path);
//지정한 경로 문자열의 확장자를 반환
//반환된 경로의 확장자에는 점(.)이 포함된다
var extension = Path.GetExtension(path);
//지정한 경로 문자열에서 파일 이름을 확장자 없이 반환
var filenameWithoutExtension = Path.GetFileNameWithoutExtension(path);
//지정한 경로에서 루트 디렉터리 정보(예 : “C:\”)를 구한다.
var pathRoot = Path.GetPathRoot(path);
2. 상대 경로로부터 절대 경로를 구하는 방법
상대 경로로부터 절대 경로를 구하려면 Path 클래스에 있는 GetFullPath라는 정적 메서드를 사용한다.
var fullPath = Path.GetFullPath(@”..\Example.txt”);
3. 경로를 구성하는 방법
디렉터리 이름과 파일 이름을 결합해서 경로를 구성하려면 Path 클래스에 있는 Combine이라는 정적 메서드를 사용한다.
var dir = @”C:\Example\Temp”;
var fileName = “Sample.txt”
var path = Path.Combine(dir, fileName);
이 코드를 실행하면 path에 다음과 같은 문자열이 대입된다.
”C:\Example\Temp\Greeting.txt”
Path.Combine 메서드를 사용하면 디렉터리 이름의 끝이 ‘\’로 끝나든 그렇지 않든 적절하게 경로가 구성된다.
여러 개의 인수를 지정해서 경로를 구성할 수도 있다.
var topdir = @”C:\Example\”;
var subdir = @”Temp”;
var fileName = “Sample.txt”;
var path = Path.Combine(topdir, subdir, fileName);
'C# > 파일 처리' 카테고리의 다른 글
C#에서 특수 폴더의 경로를 구하는 방법 (바탕 화면, 내 문서, Program Files, Windows, 시스템 폴더) (0) | 2021.08.30 |
---|---|
C#에서 Directory 처리 (디렉터리 존재 확인, 생성, 삭제, 이동, 이름 수정, 목록, 변경된 시각, 현재 디렉터리) (0) | 2021.08.28 |
C#에서 파일 처리 (파일 존재 확인, 삭제, 복사, 이동, 이름 수정, 크기) (0) | 2021.08.26 |
C#에서 텍스트 파일 쓰기 (파일 출력) (0) | 2021.08.26 |
C#에서 텍스트 파일 읽기 (파일 입력) (0) | 2021.08.25 |