В Java у нас есть много способов преобразовать файл в строку.
Текстовый файл для последующего тестирования.
A B C D E
1. Java 11 – Java 11 –
Новый метод Files.ReadString
добавлен в java.nio.файл. Файлы
, это значительно облегчает чтение строки из файла.
package com.mkyong; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; public class FileToString1 { public static void main(String[] args) { String path = "c:\\projects\\app.log"; try { // default StandardCharsets.UTF_8 String content = Files.readString(Paths.get(path)); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } } }
A B C D E
2. Java 8 – Java 8 –
Преобразуйте файл в Поток
и присоединяйтесь к нему.
package com.mkyong; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.stream.Collectors; import java.util.stream.Stream; public class FileToString2 { public static void main(String[] args) { String path = "c:\\projects\\app.log"; try (Streamlines = Files.lines(Paths.get(path))) { // Formatting like \r\n will be lost // String content = lines.collect(Collectors.joining()); // UNIX \n, WIndows \r\n String content = lines.collect(Collectors.joining(System.lineSeparator())); System.out.println(content); // File to List //List list = lines.collect(Collectors.toList()); } catch (IOException e) { e.printStackTrace(); } } }
A B C D E
3. Java 7 – Java 7 –
Преобразовать файл в Список
package com.mkyong; import java.io.IOException; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.List; public class FileToString3 { public static void main(String[] args) { String path = "c:\\projects\\app.log"; try { // default StandardCharsets.UTF_8 // Java 8 // Listcontent = Files.readAllLines(Paths.get(path)); // Java 7 List content = Files.readAllLines(Paths.get(path), StandardCharsets.UTF_8); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } } }
Выход
[A, B, C, D, E]
4. Общий доступ Apache IO
commons-io commons-io 2.6
package com.mkyong; import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.nio.charset.StandardCharsets; public class FileToString4 { public static void main(String[] args) { String path = "c:\\projects\\app.log"; try { String content = FileUtils.readFileToString(new File(path), StandardCharsets.UTF_8); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } } }
Выход
A B C D E
Рекомендации
- Файлы Javadoc
- JAVADOCS для буферизованного чтения
- Как прочитать файл в Java – BufferedReader
- Поток Java 8 – Чтение файла строка за строкой
Оригинал: “https://mkyong.com/java/java-convert-file-to-string/”