string path = null;
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Excel files (*.xls,*xlsx)|*.xls;*xlsx|All files (*.*)|*.*"; //필터는 변경 가능
if (ofd.ShowDialog() == DialogResult.Cancel)
{
return; //취소했을때 함수 종료 (함수가 void일 경우에 해당)
}
path 에는 선택한 경로가 들어있다. D의 test.txt 파일을 선택했다면, path 에는 "D:\\test.txt" 가 입력되어 있을 것이다.
==MSDN 본문 중==
각 필터링 옵션에 대 한 필터 문자열에는 세로줄 필터에 대 한 설명을 포함 막대 (|) 및 필터 패턴입니다. 다양 한 필터링 옵션에 대 한 문자열 세로 막대로 구분 됩니다.
다음은 필터 문자열의 예입니다.
Text files (*.txt)|*.txt|All files (*.*)|*.*
예를 들어 파일 형식 세미콜론으로 구분 하 여 필터에 여러 필터 패턴을 추가할 수 있습니다.
Image Files(*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|All files (*.*)|*.*
사용 하 여 FilterIndex 사용자에 게 첫 번째는 필터링 옵션을 설정 하는 속성만 표시 됩니다.
MSDN 예제
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 | private void button1_Click(object sender, System.EventArgs e) { Stream myStream = null; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = "c:\\" ; openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*" ; openFileDialog1.FilterIndex = 2 ; openFileDialog1.RestoreDirectory = true ; if(openFileDialog1.ShowDialog() == DialogResult.OK) { try { if ((myStream = openFileDialog1.OpenFile()) != null) { using (myStream) { // Insert code to read the stream here. } } } catch (Exception ex) { MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message); } } } |
위의 내용 링크 : https://msdn.microsoft.com/ko-kr/library/system.windows.forms.filedialog.filter(v=vs.110).aspx
'프로그래밍 > C#' 카테고리의 다른 글
C# [DataContract], [DataMember] namespace (0) | 2018.04.27 |
---|---|
C# Log4Net 사용하기 - 파일편 (0) | 2018.04.26 |
C# 마우스 커서 진행중으로 표시하기 (0) | 2018.01.18 |
C# int to hex(byte) (0) | 2017.06.15 |
C# 리스트를 파일(dat)로 저장하기 (0) | 2017.06.09 |