Я читаю чей-то код; у них есть такая строка:
InputStream is = getClass().getResourceAsStream("../../../../../../file.txt");
Почему бы вам сделать это вместо File
? Разве нет смысла использовать загрузчик классов для поиска ресурсов в указанном пути к классам загрузчиков классов?