2014-11-15 2 views
1

내가 File.delete를을 사용하여 특정 기존 파일을 삭제하는 방법을 사용하고() 메소드file.delete() 함수를 사용하여 파일이 삭제되지 않는 이유는 무엇입니까?

public void deleteFile(String fileName)throws IOException //To refine. Does not work 
{ 
    File file=new File("C:\\File Handling\\"+fileName+".txt"); 
    boolean success=file.delete(); 
    System.out.println(success); 
} 

그러나 성공은 항상 false로 반환됩니다 다음과 같다. 무엇이 잘못 되었나요?

java를 사용하여 파일을 삭제하는 방법에 대해 알려주십시오.

+0

거기에 .exists() 체크를 추가하고 쓰기 권한 등을 먼저 확인하십시오. –

답변

1

Windows에서는 일반적으로 프로세스에서 열리는 파일을 삭제할 수 없습니다. 또한 명령 줄에서 삭제를 수행하여 사용 권한이 있는지 확인할 수도 있습니다.

1

코드가 내 컴퓨터에서 완벽하게 작동합니다. 난 그냥 클래스에 싸서과는 main()에 의해 호출되는 정적했다

public static void main(String[] args) throws IOException { 
     deleteFile("newfile"); 
    } 

    public static void deleteFile(String fileName)throws IOException //To refine. Does not work 
    { 
     File file=new File("C:\\File Handling\\"+fileName+".txt"); 
     boolean success=file.delete(); 
     System.out.println(success); 
    } 
0

창 당신이 있는지 확인 할 수 방법() 메소드 파일이 방법 deleteOnExit를 사용해보십시오 처리하는 방법에 대한 펑키 수 있습니다 때때로 프로그램이 여전히 코드 내에서 열려 있지 않습니다. 또한 코드를 실행하기 전에 파일이 다른 프로그램에서 열려 있지 않은지 다시 확인 했습니까?

관련 문제