当前位置:首页 > Java

java如何打开文本

2026-03-26 09:33:48Java

使用 FileReaderBufferedReader

通过 FileReader 读取文件,配合 BufferedReader 逐行处理文本内容。示例代码:

java如何打开文本

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class ReadTextFile {
    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.readAllLines(Java 7+)

java.nio.file.Files 提供简便方法直接读取所有行到 List<String>。适用于小文件:

java如何打开文本

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;

public class ReadTextFile {
    public static void main(String[] args) throws Exception {
        String filePath = "example.txt";
        List<String> lines = Files.readAllLines(Paths.get(filePath));
        for (String line : lines) {
            System.out.println(line);
        }
    }
}

使用 Scanner 逐行读取

Scanner 类适合按分隔符(如行或单词)解析文本:

import java.io.File;
import java.util.Scanner;

public class ReadTextFile {
    public static void main(String[] args) throws Exception {
        Scanner scanner = new Scanner(new File("example.txt"));
        while (scanner.hasNextLine()) {
            System.out.println(scanner.nextLine());
        }
        scanner.close();
    }
}

使用 Files.lines(Java 8+ 流式处理)

通过流(Stream)逐行处理大文件,避免内存溢出:

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Stream;

public class ReadTextFile {
    public static void main(String[] args) throws Exception {
        String filePath = "example.txt";
        try (Stream<String> stream = Files.lines(Paths.get(filePath))) {
            stream.forEach(System.out::println);
        }
    }
}

注意事项

  • 路径处理:建议使用绝对路径或确保相对路径基于项目根目录。
  • 异常处理:务必捕获 IOException,或通过 throws 声明。
  • 资源释放:使用 try-with-resources 自动关闭流(如 BufferedReader)。

标签: 文本java
分享给朋友:

相关文章

vue实现文本自动换行

vue实现文本自动换行

vue实现文本自动换行的方法 使用CSS样式控制 在Vue组件的样式中,通过white-space和word-break属性实现自动换行: .text-wrap { white-space: p…

java如何创建类

java如何创建类

创建类的基本语法 在Java中,类通过class关键字定义,语法如下: [访问修饰符] class 类名 { // 成员变量(属性) // 构造方法 // 成员方法 }…

java前景如何

java前景如何

Java 当前的市场需求 Java 在企业级开发、大数据、云计算等领域仍占据重要地位。许多大型企业(如银行、电商平台)依赖 Java 构建后端系统。招聘平台数据显示,Java 开发岗位数量稳定,尤其在…

java如何创建数组

java如何创建数组

创建数组的基本方法 在Java中,数组是固定大小的同类型元素集合。创建数组需要声明数组类型并初始化。 声明数组 语法格式为 数据类型[] 数组名 或 数据类型 数组名[]: int[] arr1;…

java如何产生随机数

java如何产生随机数

使用 Math.random() 方法 Math.random() 生成一个范围在 [0.0, 1.0) 的伪随机 double 值。通过缩放和偏移可以生成指定范围的随机数。 double ra…

如何阅读java源码

如何阅读java源码

阅读Java源码的方法 选择合适的源码项目 初学者建议从JDK核心类库(如java.lang、java.util)或知名开源项目(如Spring、Guava)入手。选择文档完善、社区活跃的项目能降低理…