2017-01-19 6 views
0

현재 폴더 및 파일을 만들지 못했습니다. 나는 그것에 대해 점점 계속해서 오류가 발생하지 않으며 나는 그것을 고치는 법을 정말로 모른다.폴더 및 파일 생성이 작동하지 않습니다.

이 내 주요

import java.io.IOException; 


public class main { 

    /** 
    * @param args the command line arguments 
    */ 


    public static void main(String[] args) throws IOException{ 
     timeKeepHome ja = new timeKeepHome(); 
     //ja.setVisible(true); 
     fileTimeLog log = new fileTimeLog(); 


     log.checkFile(); 

    } 

} 

이며,이 파일/폴더를 만들 내 클래스입니다.

import java.io.IOException; 
import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.PrintWriter; 
import java.util.Scanner; 
import java.util.Date; 
import java.text.DateFormat; 
import java.text.SimpleDateFormat; 
import java.util.Calendar; 
import java.util.Formatter; 


public class fileTimeLog 
{ 
    File log = new File("log/sixWeek.dat"); 
    File folder = new File("log"); 
    PrintWriter logW = new PrintWriter("log/sixWeek.dat"); 

    public fileTimeLog() throws IOException 
    { 
     System.out.println("successful"); 
     checkFile(); 
    } 

    public void checkFile() throws IOException 
    { 
     if(!(log.exists())) 
     { 
      createFile(); 

     } 
    } 
    public void saveTime() throws IOException 
    { 

    } 

    public void saveDate() 
    { 

    } 

    public void createFile() throws IOException 
    { 
     folder.mkdir(); 
     logW = new PrintWriter(log); 
     logW.println("DONT MODIFY THIS FILE IF UNLESS YOU KNOW WHAT YOUR ARE DOING "); 
     logW.close(); 

    } 

} 

및 오류가 난

Exception in thread "main" java.io.FileNotFoundException: log\sixWeek.dat (The system cannot find the path specified) 
    at java.io.FileOutputStream.open0(Native Method) 
    at java.io.FileOutputStream.open(FileOutputStream.java:270) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:213) 
    at java.io.FileOutputStream.<init>(FileOutputStream.java:101) 
    at java.io.PrintWriter.<init>(PrintWriter.java:184) 
    at fileTimeLog.<init>(fileTimeLog.java:17) 
    at main.main(main.java:18) 

내가 모든 것을 친절하고 깔끔한 보이게 만들 것입니다하지만 난 정말 좌절 그리고 난 연구를했지만 정말 이해가되지 않는군요.

답변

0

시도하고 파일을 만듭니다 Printwriter, 그래서 당신은 당신의 클래스 (고화질)이

PrintWriter logW = new PrintWriter("log/sixWeek.dat"); 

을 수행 할 때, 다음 그것을 만들려고 할 것입니다,하지만 당신은 createFile

할 때까지 폴더가 존재하지 않습니다

어쨌든 logWcreateFile에 다시 초기화 할 때 클래스 정의에서 초기화하지 않아도됩니다.