읽기 전용 파일은 어떻게 삭제합니까?
다운로드, 일회성 프로젝트, 이메일 초안 및 며칠 동안 유용 할 수 있지만 영원히 저장할 필요는없는 기타 다양한 항목을 던지는 정크 디렉터리가 있습니다. 이 디렉토리가 내 컴퓨터를 차지하는 것을 막기 위해 지정된 날짜보다 오래된 모든 파일을 삭제하고 삭제 된 파일 수와 크기에 대한 통계를 재미로 기록하는 프로그램을 작성했습니다.
몇 개의 프로젝트 폴더가 예상보다 오래 살아있는 것을 발견하여 조사를 시작했습니다. 특히 SVN을 사용한 프로젝트의 폴더가 붙어있는 것 같았습니다. .svn 디렉토리의 읽기 전용 파일이 삭제되지 않는 것으로 나타났습니다. 난 그냥 읽기 전용 파일에 대한 간단한 테스트를하고 있다는 것을 발견 System.IO.File.Delete
하고 System.IO.FileInfo.Delete
읽기 전용 파일을 삭제하지 않습니다.
이 특정 디렉토리에있는 파일을 보호하는 데는 관심이 없습니다. 중요한 것이 있으면 잘못된 위치에 있습니다. 읽기 전용 파일을 삭제할 수있는 .NET 클래스가 있습니까? 아니면 읽기 전용 특성을 확인하고 제거해야합니까?
File.Delete의 문서 에 따르면 읽기 전용 속성을 제거해야합니다. File.SetAttributes ()를 사용하여 파일의 속성을 설정할 수 있습니다 .
using System.IO;
File.SetAttributes(filePath, FileAttributes.Normal);
File.Delete(filePath);
File.Delete의 문서 에 따르면 읽기 전용 속성을 제거해야합니다. File.SetAttributes ()를 사용하여 파일의 속성을 설정할 수 있습니다 .
FileInfo
객체 로 작업하는 경우에 해당하는 것은 다음 과 같습니다.
file.IsReadOnly = false;
file.Delete();
왜 확인해야합니까? 읽기 전용 플래그를 강제로 지우고 파일을 삭제하십시오.
음, 차라리
>del /F *
예정된 작업으로. 통계 로깅을 위해 배치 파일로 래핑되었을 수 있습니다.
내가 뭔가를 놓치고 있습니까?
참고 URL : https://stackoverflow.com/questions/265896/how-do-i-delete-a-read-only-file
'Programing' 카테고리의 다른 글
반복자를 사용하는 방법? (0) | 2020.10.31 |
---|---|
특정 접두사 / Mysqldump 와일드 카드가있는 테이블 만 Mysqldump? (0) | 2020.10.31 |
PHP에서 ++ $ i와 $ i ++의 차이점은 무엇입니까? (0) | 2020.10.31 |
IEnumerable을 일괄 적으로 반복하는 방법 (0) | 2020.10.31 |
추가 메소드 후 Jquery 클릭 이벤트가 작동하지 않음 (0) | 2020.10.31 |