Я хочу создать метод в Java, который считывает данные из txt-файла и возвращает массив. Я создал первую версию этого метода - могу сказать, что он работает, но я чувствую, что форма этого метода не эффективна, и есть способ сделать это намного быстрее и лучше ... Могу ли я спросить вы должны взглянуть и сообщить мне, что можно сделать лучше?Метод, который использует BufferedReader для чтения файла и возврата массива
Большое спасибо заранее за вашу ценную помощь
public static String[] reader(File file) throws IOException {
String array[] = null;
StringBuilder stringBuilder = new StringBuilder();
String data;
try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
int i = 0;
while ((data = reader.readLine()) != null) {
System.out.println("I've just read a line number" + (i + 1));
i++;
stringBuilder.append(data + "/");
}
if (stringBuilder != null) {
data = stringBuilder.toString();
array = data.split("/");
}
return array;
}
}
Не используйте StringBuilder и затем разделяйте. Используйте ArrayList и добавьте прямые к нему. – Thilo
Зачем вам нужна нулевая проверка на 'stringBuilder'? – Thilo
Если вы действительно не хотите писать этот метод, вы также можете просто вызвать 'Files.readAllLines (filePath)' (стандартная библиотека библиотеки JDK 8). – Thilo