Как читать из текстового файла в Java, когда он не сохранен в том же месте
Я пытаюсь написать функцию, которая будет принимать строку, затем открыть файл с именем этой строки и прочитать текст. Я знаю, как это сделать, но у меня возникли проблемы с тем, что мои текстовые файлы не сохраняются в том же месте, что и мой файл Java.
Похоже на это.
Project name/src/program.java
Project name/resources/text.txt
Я использую класс File, но не знаю, что поместить в конструктор File, чтобы открыть его в нужном месте. то есть. File store = new File(xxxxxxxxxtext.txt)
Помогите мне с тем, что идет перед именем файла, пожалуйста. Кроме того, это Java 6 и я на Windows 8.
Это мой код:
public static void areaSearch(String a) {
Scanner reader = null;
try {
reader = new Scanner(new File("../resources/" + a+ ".txt"));
}
catch (Exception e) {
System.out.println("File: " + a +" not opended...");
}
2 ответа
Используйте относительный путь, если он находится на простом относительном пути из папки вашего проекта:
File file = File("../resources/text.txt");
Или используйте абсолютный путь:
File file = File("C:\\abcfolder\\text.txt");
Прочитайте документацию. Для класса File существует более 1 конструктора. Использование:
public File(File parent, String child)