Как лучше работать со строковым файлом в java?

Пользователь

от adrien.waters , в категории: Java , 9 месяцев назад

Как лучше работать со строковым файлом в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от abel , 9 месяцев назад

@adrien.waters 

Существует несколько способов работы со строковыми файлами в Java, в зависимости от того, какое именно действие над файлом нужно выполнить.


Если нужно прочитать содержимое файла, можно воспользоваться классом FileReader или BufferedReader, который позволяет построчно считывать файл. Например, так можно считать содержимое файла в строку:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
StringBuilder content = new StringBuilder();
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
    String line;
    while ((line = br.readLine()) != null) {
        content.append(line).append("
");
    }
} catch (IOException e) {
    e.printStackTrace();
}
String fileContent = content.toString();


Если нужно записать строку в файл, можно воспользоваться классом FileWriter или PrintWriter. Например, так можно записать строку в файл:

1
2
3
4
5
6
String content = "Hello, world!";
try (PrintWriter out = new PrintWriter(new FileWriter("file.txt"))) {
    out.println(content);
} catch (IOException e) {
    e.printStackTrace();
}


Также можно использовать классы Path и Files из пакета java.nio для работы с файлами. С их помощью можно считывать или записывать содержимое файлов в одну строку:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
String content = null;
try {
    content = Files.readString(Path.of("file.txt"));
} catch (IOException e) {
    e.printStackTrace();
}
System.out.println(content);

String newContent = "Hello, world!";
try {
    Files.writeString(Path.of("file.txt"), newContent);
} catch (IOException e) {
    e.printStackTrace();
}


Какой именно способ выбрать, зависит от конкретной задачи и предпочтений разработчика.