문제

Directories some_folder, some_folder_1, some_folder_2 및 some_folder_3은 처음에는 존재하지 않습니다.

File folder1 = new File("some_folder/some_folder_1"); 
File folder2 = new File("some_folder/some_folder_2"); 
File folder3 = new File("some_folder/some_folder_3"); 

if(!folder1.exists()) {
    folder1.mkdirs();
}

if(!folder2.exists()) {
    folder2.mkdirs();
}

if(!folder3.exists()) {
    folder3.mkdirs();
}

이것이 좋은 방법일까요?

도움이 되었습니까?

해결책

경로 분리기를 사용하지 말고 대신 올바른 생성자를 사용하십시오.

File folder1 = new File("some_folder", "some_folder_1"); 
if (!folder1.exists()) {
    folder1.mkdirs(); // returns a boolean
}

다른 팁

글쎄, 당신은 테스트가 필요하지 않습니다 - mkdirs는 단지 돌아옵니다 false 디렉토리가 이미 존재하는 경우 나는 하나의 "기본"파일을 사용하는 것을 선호합니다. some_folder 전방 슬래시가 있지만 슬래시를 하드 코딩하지 않도록 ~할 것 같은 가장 인기있는 플랫폼에서 작업하기 위해 :)

File baseFolder = new File("some_folder");
new File(baseFolder, "some_folder_1").mkdirs();
new File(baseFolder, "some_folder_2").mkdirs();
new File(baseFolder, "some_folder_3").mkdirs();

이름이 이미 존재하지만 파일 폴더 대신 ...

또는

String[] folders = {"some_folder_1", "some_folder_2", "some_folder_3"};
File root = new File("some_folder");
for (String folder: folders)
    new File(root, folder).mkdirs();
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top