Вы сказали, что используете eclipse, и что вы перетаскивали свои текстовые файлы в пакет "src". «src» не является пакетом. Это просто каталог файловой системы. По умолчанию в проекте Java в eclipse весь ваш исходный код хранится в каталоге с именем «src», а все ваши файлы .class хранятся в каталоге с именем «bin». getClass (). getResource () разрешает местоположение ваших файлов .class. Вы должны переместить текстовые файлы в каталог «bin».
В каком пакете ваш класс?
Я написал код, очень похожий на ваш, в пакете по умолчанию и запустил его в eclipse.
import java.io.File;
public class ResourceTest {
public static void main(String[] args) {
ResourceTest rt = new ResourceTest();
rt.openFile();
}
public void openFile() {
String path = this.getClass().getResource("/resources/file.txt").getFile();
File file = new File(path);
System.out.println(path);
System.out.println(file.getAbsolutePath());
System.out.println(file.exists());
}
}
Я вижу этот вывод:
/C:/Users/rab29/Documents/eclipse/Overflow/bin/resources/file.txt
C:\Users\rab29\Documents\eclipse\Overflow\bin\resources\file.txt
true