Путь проекта Java NetBeans для текстового файла

У меня есть следующий код для чтения текстового файла.

public static void main(String[] args)
{
    try 
    {
    Scanner in = new Scanner(new FileReader("input.txt"));
    while(in.hasNext())
    {
        System.out.println(in.next());
    }
} 
catch (FileNotFoundException ex) 
{
    Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}

У меня есть структура моего проекта, настроенная следующим образом:

build/ directory contains class
dist/  directory contains the jar file 
src/ directory contains source
input.txt the text file to read

Если я поместил свой текстовый файл input.txt в каталог с именем test, который имеет тот же каталог, что и build, dist и src, что должно войти в параметр filereader, чтобы Я все еще могу найти этот файл?

Ответ 1

При запуске внутри среды Netbeans IDE рабочий каталог является корнем проекта, поэтому для ответа на ваш вопрос "test/input.txt".

Обратите внимание, что, хотя это отлично подходит для тестирования кода, работать с относительными путями, такими как в конечном (производственном) коде, может быть сложнее. В этих случаях обертка файла в качестве ресурса в банке и открытие его в качестве ресурса-источника может быть лучшим решением или, конечно, работать с абсолютными путями.

Ответ 2

Если вы знаете имя своего подкаталога, просто используйте

Scannner in = new Scanner(new FileReader("test/input.txt"));