2009-05-03 3 views

답변

29

나는 이것에 대한 좋은 해결책을 본 적이 없지만 이것이 내가 한 것입니다.

File temp = File.createTempFile("folder-name",""); 
temp.delete(); 
temp.mkdir(); 
+0

이것은 흥미로운 접근 방법입니다. 나는 이런 식으로 생각하지 않았다. – Geo

4

임시 디렉토리를 만들고 더 이상 필요하지 않을 때 임시 디렉토리를 삭제하기위한 자체 유틸리티 클래스를 작성합니다. 예 : like this.

8

java.io.tmpdir 속성으로 정의 된 디렉토리를 사용할 수없는 이유는 무엇입니까?

String dirName = System.getProperty("java.io.tmpdir"); 
+0

JVM이 종료되면 createTempFile의 '임시 파일'이 자동으로 삭제됩니다. 나는 OP가 이런 종류의 디렉토리를 요구하고 있다고 생각한다. 그래서 기존의 tmpdir 디렉토리를 사용해서는 안된다. (내가 단위 테스트를 작성하기 위해 비슷한 것을 필요로하고, createTempFile + delete + mkdir을 사용하고이 디렉토리 내에 '임시'파일 만 생성했다 - JVM은 내가 정확히 기억한다면 정리를 할 수있다.) –

+1

좋아, 자동으로 삭제되지 않는다. JVM에게 먼저 (deleteOnExit에 의해) –

+0

을 부탁 할 필요가있다. 사이드 훅과 마찬가지로, 셧다운 훅을 등록함으로써 쉽게 JVM 종료에 대한 파기를 추가 할 수있다. –

관련 문제