java如何打印txt
读取并打印txt文件内容
使用BufferedReader和FileReader读取文件内容,逐行打印:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadTxtFile {
public static void main(String[] args) {
String filePath = "example.txt";
try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
使用Files类快速读取
Java 7+的Files类提供更简洁的读取方式:
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class ReadTxtWithFiles {
public static void main(String[] args) throws Exception {
List<String> lines = Files.readAllLines(Paths.get("example.txt"));
lines.forEach(System.out::println);
}
}
处理大文件时的流式读取
对于大文件建议使用流式处理避免内存溢出:
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class StreamReadTxt {
public static void main(String[] args) {
try (Stream<String> stream = Files.lines(Paths.get("largefile.txt"))) {
stream.forEach(System.out::println);
} catch (Exception e) {
e.printStackTrace();
}
}
}
指定字符编码处理
当文件使用非默认编码时需显式指定:
import java.nio.charset.StandardCharsets;
// 在Files.readAllLines或Files.lines中指定编码
List<String> lines = Files.readAllLines(
Paths.get("utf8file.txt"),
StandardCharsets.UTF_8
);
异常处理建议
完整的异常处理应包含文件存在性检查:

Path path = Paths.get("example.txt");
if (!Files.exists(path)) {
System.err.println("文件不存在: " + path);
return;
}






