2016-08-09 7 views
-2

읽기 전용 파일을 업데이트하기 때문에 오류가 발생합니다. 현재 나는 소프트 파일을 삭제하는 방법이 있습니다. 이 메소드에는, 입력 스트림을 포함한 필드를 가지는 DataHandler 파라미터가 있습니다. dataHandler.getInputStream가 준비되어 있는지를 판별하는 방법이 있다면 몇 가지 제안을하고 싶습니다. 하드 디스크의 파일에 스트림을 쓰는 것은 옵션이 아닙니다.Java : inputStream이 읽기 전용 파일인지 알 수있는 방법이 있습니까?

+0

이해가 안됩니다. 파일이 열려있는 동안 파일을 삭제하는 방법이 있습니다 (입력 스트림 있음)? 파일이 읽기 전용이고 파일이 읽기 전용인지 여부를 알려주는 오류가 나타납니다. – EJP

+0

나는 며칠 전에 거의 같은 질문을 보았다. 이게 일종의 임무인가? 아니면 같은 질문을 다시 게시하고 있습니까? - 너 였어. 당신은 이미 그 질문에 대한 답을 가지고 있습니다. –

답변

2

당신의 질문은 실제로 의미가 없습니다. InputStream은 당신이 읽는 것과 같은 것입니다. InputStream에 쓰거나 삭제할 수는 없습니다.

InputStream의 원본 인 파일을 삭제하려는 경우 File 객체 참조를 삭제해야하므로 File 객체를 사용하여 쓰기 기능을 확인할 수 있습니다. canWrite() 메소드.

그러나 FileException을 예외없이 삭제하려고 시도하는 것은 아닙니다. SecurityException도 catch해야합니다.

또한 delete() 결과를 확인하여 파일이 실제로 삭제되었는지 확인해야합니다.