2011-12-09 4 views
2

지정된 경로에서 등록 정보 파일을 삭제해야합니다. 다음 코드를 사용했습니다 :등록 정보 파일을 삭제할 수 없습니다.

File f1 = new File("C:\\Equinox\\UIDesign\\root\\root.properties"); 
boolean success=f1.delete(); 

false를 반환합니다.

하지만 속성 파일 대신 텍스트 파일이 성공적으로 삭제됩니다.

+1

"수동으로 삭제"시도 했습니까? 적절한 권한이 있는지 확인 했습니까? 자세한 내용은 – Justmaker

답변

5

File.delete()이 실패 할 수있는 이유 몇 가지 이유가 있습니다

  • 그것은 디렉토리와 빈 아니다
  • 당신이 파일은 여전히 ​​열려
  • 을 파일을 삭제하는 OS의 권한이 없습니다 어딘가에

파일에 대한 FileInput/OutputStream을 열었을 때 마지막 파일 오류가 발생했을 수 있습니다.

+0

+1 – GETah

1

나는 Michael에 동의한다. 그의 답변은 많은 의미가있다. 코드에 대한 주석 만 있으면 가능한 모든 오류를 잡아 그에 따라 사용자에게 알리려면 다음을 수행해야합니다.

try{ 
File f1 = new File("C:\\Equinox\\UIDesign\\root\\root.properties"); 
boolean success=f1.delete(); 
if(!success){ 
    // Notify user that the file 
} 
catch(SecurityException ex){ 
// No sufficient rights to do this operation 
} 
관련 문제