systemproperty 'user.dir' относится к домашнему каталогу пользователя.Это НЕ то же самое, что «текущий рабочий каталог», то есть каталог, в котором разрешены относительные пути.
В вашем случае 2 явно не равны.
Вы можетелибо используйте следующее:
new File(getSystemProperty("user.dir"), "names.txt");
или вы можете указать абсолютный путь и помнить, что в java обратная косая черта - это строка escape, поэтому она будет выглядеть следующим образом:
new File("C:/Users/steve/eclipse-workspace/a3/names.txt");
илиальтернативно:
new File("C:\\Users\\steve\\eclipse-workspace\\a3\\names.txt");
или если этот файл names.txt находится в том же месте, что и ваши файлы классов:
new Scanner(ClassYouAreIn.class.getResourceAsStream("names.txt"), StandardCharsets.UTF_8);