.NET 프레임워크에서 FileName 속성을 얻거나 설정하려면 System.Security.Permission.FileIOPermission 클래스에서 부여한 권한 수준이 필요합니다. 예제에서는 FileIOPermission 권한 검사를 실행 하 고 부분 신뢰 컨텍스트에서 실행 하는 경우 부족 한 권한으로 인해 예외를 throw할 수 있습니다. 자세한 내용은 코드 액세스 보안 기본 을 참조하십시오. OpenFileDialog에 대한 필터를 지정하여 응용 프로그램에서 열어야 하는 파일 유형을 사용자에게 표시하고 더 나은 개요를 위해 표시된 파일을 제한할 수 있습니다. 이 작업은 위의 예제에 추가할 수 있는 Filter 속성으로 수행되며, 다음과 같이 대화 상자를 초기화한 직후에 다음과 같이 합니다. 사용자가 텍스트 파일을 선택하고 확인을 선택하면 OpenFile 메서드가 메모장에서 파일을 여는 데 사용됩니다. 단순히 두 번째 부분 (컴퓨터에 대한 하나)에서 세미 콜론으로 각 확장을 분리 – 첫 번째 부분에서, 당신은 당신이 원하는 방식으로 포맷 할 수 있지만, 대부분의 개발자는 위의 예에서 와 같이, 두 부분에 대해 동일한 표기칭을 사용하는 것 같다. 이러한 예제를 C# 또는 Visual Basic 명령줄에서 .NET Framework 앱으로 빌드하고 실행할 수 있습니다. 자세한 내용은 csc.exe가 있는 명령줄 빌드 또는 명령줄에서 빌드를 참조하십시오. 필터를 지정하는 형식은 처음에는 약간 이상하게 보일 수 있지만 원하는 파일 확장자의 사람이 읽을 수 있는 버전을 지정한 다음 컴퓨터가 파이프|문자로 구분하여 쉽게 구문 분석할 수 있도록 합니다.
위의 예제에서와 같이 둘 이상의 파일 형식을 원하는 경우 각 정보 집합도 파이프 문자로 구분됩니다. System.Windows.Forms.OpenFileDialog 구성 요소는 파일을 검색하고 선택하기 위한 Windows 대화 상자를 엽니다. 선택한 파일을 열고 읽으려면 OpenFileDialog.OpenFile 메서드를 사용하거나 System.IO.StreamReader 클래스의 인스턴스를 만들 수 있습니다. 다음 예제는 두 가지 방법을 모두 보여 주며 두 가지 방법을 보여 주습니다. 당신이 볼 수 있듯이, WPF에서 OpenFile Dialog를 사용 하 여 매우 쉽고 정말 당신을 위해 많은 일을 처리. 코드 줄의 양을 줄이기 위해 이러한 예제에서는 예외 처리가 수행되지 않습니다. 파일로 작업하고 일반적으로 IO 작업을 수행할 때 잠긴 파일, 존재하지 않는 경로 또는 관련 문제로 인해 쉽게 발생할 수 있으므로 예외를 항상 조심해야 합니다. 다음 예제에서는 Windows Forms 단추 컨트롤의 Click 이벤트 처리기를 사용 하 여 ShowDialog 메서드를 사용 하 여 OpenFileDialog를 엽니다. 사용자가 파일을 선택하고 확인을 선택하면 StreamReader 클래스의 인스턴스가 파일을 읽고 해당 내용을 양식의 텍스트 상자에 표시합니다. 파일 스트림에서 읽기에 대한 자세한 내용은 FileStream.BeginRead 및 FileStream.Read를 참조하십시오. Filter 속성은 열린 파일 대화 상자에서 찾아보기 옵션 중에 로드할 파일 형식을 필터링하는 데 사용되는 열린 파일 대화 상자의 필터를 나타냅니다. 예를 들어 사용자가 이미지 파일로만 제한해야 하는 경우 Filter 속성을 설정하여 이미지 파일만 로드하도록 설정할 수 있습니다.
이 코드를 테스트하는 경우 Ctrl 또는Shift를 누르고 마우스를 클릭하여 동일한 디렉토리에서 여러 파일을 선택할 수 있습니다. 수락되면 이 예제에서는 FileNames 속성을 반복하여 ListBox 컨트롤에 파일 이름을 추가하기만 하면 됩니다. 응용 프로그램에서 여러 개의 열려 있는 파일을 지원하거나 OpenFileDialog를 사용하여 한 번에 둘 이상의 파일을 선택하려는 경우 Multiselect 속성을 사용하도록 설정해야 합니다. 다음 예제에서는 이러한 작업을 수행했으며, 친애하는 독자 여러분을 위해 .NET Core 3.0부터 예제를 빌드하고 실행할 수도 있습니다. .NET 코어 Windows 양식 .csproj 프로젝트 파일이 있는 폴더에서 Windows.NET 코어 앱.