방법: Visual Basic에서 디렉터리가 읽기 전용인지 확인
업데이트: 2007년 11월
My.Computer.FileSystem.GetDirectoryInfo 메서드 메서드는 Attributes 속성이 있는 DirectoryInfo 개체를 반환하며, 이 속성을 쿼리하면 읽기 전용 여부를 포함하여 디렉터리에 대한 정보를 확인할 수 있습니다.
참고: |
---|
대화 상자에서 사용할 수 있는 옵션과 메뉴 명령의 이름 및 위치는 실제 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다. 이 도움말 페이지는 일반 개발 설정을 염두에 두고 작성되었습니다. 설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다. 자세한 내용은 Visual Studio 설정을 참조하십시오. |
디렉터리가 읽기 전용인지 여부를 확인하려면
GetDirectoryInfo 메서드를 사용하여 지정된 디렉터리의 DirectoryInfo 개체를 반환합니다. 이 예제에서는 TestDirectory 디렉터리에 대한 DirectoryInfo 개체를 반환합니다.
Dim reader As System.IO.DirectoryInfo reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
개체의 Attributes 속성을 쿼리하여 읽기 전용 여부를 확인합니다.
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then MsgBox("Directory is readonly!") End If
예제
위 코드 조각의 완전한 형태를 나타내는 다음 예제에서는 testDirectory 디렉터리가 읽기 전용인지 여부를 확인하고 그 결과를 메시지 상자에 보고합니다.
Dim reader As System.IO.DirectoryInfo
reader = My.Computer.FileSystem.GetDirectoryInfo("C:\testDirectory")
If (reader.Attributes And System.IO.FileAttributes.ReadOnly) > 0 Then
MsgBox("File is readonly!")
End If
코드 컴파일
디렉터리가 없는 경우 DirectoryInfo 개체의 속성에 처음 액세스하기 전에는 예외가 throw되지 않습니다.
강력한 프로그래밍
다음 조건에서 예외가 발생합니다.
길이가 0인 문자열이거나, 공백만 포함하거나, 잘못된 문자를 포함하거나, \\.\로 시작하는 장치 경로와 같은 여러 가지 이유 중 하나로 경로가 올바르지 않은 경우(ArgumentException)
경로가 Nothing이기 때문에 올바르지 않은 경우(ArgumentNullException)
경로가 시스템 정의 최대 길이를 초과하는 경우(PathTooLongException)
경로의 파일 이름이나 디렉터리 이름에 콜론(:)이 있거나 이름의 형식이 잘못된 경우(NotSupportedException)
경로를 보는 데 필요한 권한이 사용자에게 없는 경우(SecurityException)
참고 항목
작업
방법: Visual Basic에서 디렉터리의 특성 확인