티스토리 뷰
사이트를 구축하게 되면 필수로 사용하게 되는 기능 중 하나가 파일 업로드입니다. 파일 업로드 시 파일명만 추출해서 저장하거나 파일 확장자를 별도로 체크해야 할 경우가 있는데 이런 경우 .Net에서 제공하는 Path 클래스를 사용하면 편리하게 파일명이나 경로, 확장자 등을 분리해서 가져올 수 있습니다.
1. Path.GetFileName : 파일명을 가져오고 싶을 때 사용
string filePath = @"C:\mydir\pengsoo.jpg";
string result;
result = Path.GetFileName(filePath);
Console.WriteLine("'{0}'", result);
//결과값: 'pengsoo.jpg'
위와 같이 파일 경로에 Path.GetFileName 메서드를 사용하면 pengsoo.jpg 이라는 파일명만 추출할 수 있습니다.
2. Path.GetExtension : 파일의 확장자를 가져오고 싶을 때 사용
string filePath = @"C:\mydir\pengsoo.jpg";
string result;
result = Path.GetExtension(filePath);
Console.WriteLine("'{0}'", result);
//결과값: '.jpg'
Path.GetExtension 메서드를 사용하면 파일경로에서 파일의 확장자만 추출할 수 있습니다.
.(comma) 값까지 같이 가지고 온다는 걸 체크하는 것이 좋습니다.
3. Path.GetDirectoryName : 파일명을 제외한 파일경로를 가져오고 싶을 때 사용
string filePath = @"C:\mydir\pengsoo.jpg";
string result;
result = Path.GetDirectoryName(filePath);
Console.WriteLine("'{0}'", result);
//결과값: 'C:\mydir\pengsoo'
Path.GetDirectoryName 메서드를 사용하면 파일명을 제외한 파일경로만 추출할 수도 있습니다.
4. Path.GetFileNameWithoutExtension : 파일의 확장자를 제외한 파일명만 가져오고 싶을 때 사용
string filePath = @"C:\mydir\pengsoo.jpg";
string result;
result = Path.GetFileNameWithoutExtension(filePath);
Console.WriteLine("'{0}'", result);
//결과값: 'pengsoo'
파일명 중 확장자만 가져올 수 있는 것처럼 Path.GetFileNameWithoutExtension 메서드를 사용하면 확장자를 제외한 파일명을 추출할 수도 있습니다.
이처럼 쉽게 파일의 확장자나 경로, 파일명 등을 가져올 수 있는 Path 클래스를 이용해서 입맛에 맞는 파일업로드 페이지를 만들어보시기 바랍니다.
'ASP.NET' 카테고리의 다른 글
.Net 현재 페이지 Url 가져오기 (0) | 2021.01.18 |
---|---|
.Net에서 대/소문자 바꾸기 (0) | 2020.07.14 |
웹 폼(WebForm)의 기본적인 이벤트 정리 (0) | 2017.08.29 |
Page.IsPostBack 속성 (0) | 2017.08.29 |
- Total
- Today
- Yesterday
- ASP
- toFixed
- 로마
- DATEDIFF
- 비스페놀A
- 런던
- london
- ASP.NET
- 한글깨짐
- 템즈강
- 이순신
- html
- favicon
- 고성
- jquery
- Roma
- 영국
- 플라스틱
- iframe
- USB
- 체크박스
- javascript
- 근위병교대식
- 태풍
- MS-SQL
- 환경호르몬
- URL
- 자바스크립트
- 인코딩
- mssql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |