2015-06-30 4 views
-1

Я могу понять, почему мой код не компилируется. Каждый раз, когда я запускаю его, я получаю исключение FILENOTFOUNDException. Любая помощь приветствуется. : DFileNotFoundException. я не понимаю

public static void main(String args[]) throws IOException 
    { 

     Scanner diskScanner = 
       new Scanner(new File("EmployeeInfo.txt")); 

     for(int empNum = 1; empNum<=3; empNum++) 
     { 
      payOneEmployee(diskScanner); 
     } 

    } 
    static void payOneEmployee(Scanner aScanner) 
    { 
     Employee anEmployee = new Employee(); 

     anEmployee.setName(aScanner.nextLine()); 
     anEmployee.setJobTitle(aScanner.nextLine()); 
     anEmployee.cutCheck(aScanner.nextDouble()); 
     aScanner.nextLine(); 
    } 
+0

Показать структуру файла. Этот файл должен быть расположен там, где выполняется компиляция, если вы используете eclipse или intellij, это будет в вашем корневом каталоге проектов. – Toumash

+0

Для записи новый File() не создает файл. – SimplyPanda

+0

Вы действительно не дали нам достаточной информации, чтобы ответить на это правильно (исключение довольно понятно - файл не найден, но вы не сообщили нам ничего о том, где находится этот файл, или где вы его запускаете , так как нам это понять?), поэтому я собираюсь продолжить и сказать, что это дубликат [java.io.FileNotFoundException: система не может найти указанный файл] (http://stackoverflow.com/ вопросы/19871955/Java-IO-FileNotFoundException-The-системы не может-найти-файлов указаны). – Dukeling

ответ

1

В основном сообщение об исключении означает, что указанное вами имя файла не является существующим файлом в каталоге исполнений.

EDIT [скопирована из моего комментария]
Этот файл должен быть расположен там, где компиляция будет сделано, если вы используете затмение или IntelliJ оно должно быть в корневом каталоге проекта.
+ Поскольку вы передаете файл a relative path and not an absolute one в файл, java распознает его как отношение к каталогу выполнения, который находится там, где указывает код following.

Чтобы проверить, что это то, что нужный каталог входных файлов просто использовать getAbsolutePath() на этом файле.
Например:

File input = new File("EmployeeInfo.txt"); 
System.out.println("Move .txt to dir:" + input.getAbsolutePath()); 
Scanner diskScanner = new Scanner(input); 

Затем переместите исходный файл .txt в этом месте