파일의 전체 경로를 가져왔을 때 파일명,확장자, 경로, 디렉토리등을 따로 분리해서 사용하고 싶을 때가 있습니다.
▼ 저도 파일을 다루기 위해 파일명을 따로 분리해야 되고 확장자가 무엇이냐에 따라 별로 처리를 해야 됩니다. 일일이 문자를 쪼개서 구분하는 것이 아니라 Path 클래스로 간단하게 추출이 가능합니다.
1. 파일명을 추출하고 싶을 때
1 2 3 | // 파일 명을 추출합니다. string filepath = @"D:\다운로드\POP\Survive You.mp3" ; Console.WriteLine(Path.GetFileName(filepath)); |
1 | 결과 : “Survive You.mp3” |
2. 파일의 확장자를 가져오고 싶을 때
1 2 3 | // . 을 포함한 확장자를 가져오고 싶을때 string filepath = @"D:\다운로드\POP\Survive You.mp3" ; Console.WriteLine(Path.GetExtension(filepath)); |
1 | 결과 : “.mp3” |
3. 파일의 확장자를 제외한 파일명을 가져오고 싶을 때
1 2 3 | // 확장자가 없는 파일명을 가져오고 싶을때 string filepath = @"D:\다운로드\POP\Survive You.mp3" ; Console.WriteLine(Path.GetFileNameWithoutExtension(filepath)); |
1 | 결과 : “Survive You” |
4. 파일을 제외한 경로명만 가져오고 싶을때
1 2 3 | // 파일을 제외한 경로명만 가져올때 string filepath = @"D:\다운로드\POP\Survive You.mp3" ; Console.WriteLine(Path.GetDirectoryName(filepath)); |
1 | 결과 : “D:\다운로드\POP” |
5. 파일과 경로를 합치고 싶을 때
▼ 파일과 경로를 분리해 놓고 다시 합치고 싶을 때 Path.Combine() 함수를 사용하시면 됩니다. 문자열을 합쳐도 되겠지만 Combine 을 사용하면 합칠 때 경로의 구분자인 역슬레쉬를 안넣어도 자동으로 알아서 추가해 줍니다.
1 2 3 4 | // 파일을 제외한 경로명만 가져올때 string filepath = @"D:\다운로드\POP\Survive You.mp3" ; Console.WriteLine(Path.Combine( "D:\\다운로드\\POP" , "Survive You.mp3" )); Console.WriteLine(Path.Combine( "D:\\다운로드\\POP\\" , "Survive You.mp3" )); |
1 2 | 결과 : “D:\다운로드\POP\Survive You.mp3” “D:\다운로드\POP\Survive You.mp3” |
출처 : http://mainia.tistory.com/2349
'C/Objective C > C#' 카테고리의 다른 글
[제 9장]C# 이벤트를 이용한 그림판 만들기 예제 따라하기 (0) | 2012.06.12 |
---|---|
[제 8장]C# 메뉴를 이용한 메모장 만들기 예제 따라하기 (0) | 2012.06.12 |
[제 7장]C# 콤보박스/라디오버튼/리스트박스/텍스트박스 예제 따라하기 (0) | 2012.06.12 |
[제 6장]C# 문자열 예제 따라하기 (0) | 2012.05.17 |
[제 5장]C# 배열 예제 따라하기 (0) | 2012.05.11 |