Возможно, ваш Windows не показывает расширения файлов; nameList.txt? В противном случае рабочий каталог не находится в каталоге проекта с подкаталогом sr c.
A FileReader
использует Charset по умолчанию, поэтому файл не является переносимым. Если вы запускаете приложение на другой платформе, чем у разработчика, кодировка неправильная. Лучше всего использовать UTF-8, полный Unicode.
Тогда чтение обрезает конец строки:
while (line != null) {
sb.append(line).append("\r\n");
line = br.readLine();
}
Вы можете сделать:
Path names = Paths.get("src/guiProject/nameList.txt"); // File
Path names = Paths.get(
MyClass.class.getResource("/guiProject/nameList.txt").toURI()); // Resource
String allNames = new String(Files.readAllBytes(names), StandardCharsets.UTF_8);
userListArea.setText(allNames);
Если это чтение только файл, хранящийся в jar-файле приложения, это ресурс , а не диск файл .