는 아래의 코드를 고려 - documentation 당으로존재하지 않는 파일에 대해 FileAttributes 값이 -1 인 이유는 무엇입니까?
FileInfo fileInfo = new FileInfo("C:\\doesNotExist.txt");
Console.WriteLine(fileInfo.Attributes);
Console.WriteLine(fileInfo.Attributes.HasFlag(FileAttributes.ReadOnly));
을 열거의 기본 기본 유형은 INT -1의 값을 갖는 INT는 기본적으로 바이너리에서 모두 1입니다. FileAttributes는 멤버 값 (as stated here)의 비트 조합을 허용하므로 FileAttributes -1의 기본값은 존재하지 않는 파일이 가능한 모든 FileAttributes를 소유하고 있음을 의미합니다 (위의 코드는 True를 인쇄합니다. 세 번째 숫자는입니다. line)
하위 호환성. 대신 File.GetAttributes()를 사용하면 throw됩니다. –