2012-03-06 7 views
0

다음 코드에 문제가 있습니다. 새 파일을 만들기 전에 파일이 있는지 확인하기 위해 기존 디렉토리를 살펴보고자하지만 디렉토리에 기존 파일이 없더라도 새 파일을 만드는 것처럼 보입니다. 두 가지 관련 방법을 첨부했지만 문제는 writeFile() 메서드에 있습니다. writeFile에서 기존의 'dir'을 사용하려고 시도했지만,이 트릭도 수행하지 못했습니다. 프로그램의 나머지 부분은 작동하지 않는 것 같습니다. 단지 writeFile 메서드에 문제가 있습니다.파일 디렉터리 및 파일 만들기 문제

public void writeFile(String t) throws IOException { 
    File temp1 = new File(dateNow + File.separator + "Temperature.txt"); 
    boolean check = temp1.exists(); 
    if (!check) 
     newFiles(); 
} 

public void newFiles() { 
    SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy"); 
    dateNow = formatter.format(now.getTime()); 
    System.out.println(dateNow); 
    // if (hour == 00 && mini == 00 && sec == 00) { 
    try { 
     dir = new File(dateNow); 
     boolean x = dir.mkdir(); 
     // .... 
    } catch (Exception e) { 
     // 
    } 
} 
+1

전체 코드를 게시하십시오 – michael667

+0

코드를 작성하는 곳이 어디에도 없습니다. 현재 폴더 (프로그램이 실행중인 폴더)에 *** 하위 디렉토리 ***을 생성하도록 요청했지만 해당 작업의 불리언 반환을 확인하지 않아서 성공했는지 여부를 확인하지 않았습니다. 또한 예외가있는 경우 무언가를 수행해야하며 코드가 현재 표시되는 방식으로는 절대 삼켜서는 안됩니다. – Perception

답변

1

당신은 전체 경로, 단지 디렉토리와 파일 이름이 파일을 만들거나, 심지어는 그것이 존재의 확인하지를 지정해야합니다 ,. michael667에 감사드립니다. 상대 위치에 대해 생각 나게합니다. :) 위의 코드에 문제가 없어야합니다.

+1

그건 사실이 아니야. 상대 경로는 현재 작업 디렉토리와 관련됩니다. – michael667

+0

어떻게 파일을 검사하지 않고 디렉토리를 검사합니까? – user1106130

+0

데스크톱에서 컴파일 할 때 작동하지만 폴더에서 작동하지 않습니까? – user1106130

관련 문제