Java(springboot) 读取txt文本内容代码实例

下面是关于"Java(springboot) 读取txt文本内容代码实例"的完整攻略:

1. 准备工作

在开始实际操作之前,请确保你已经按照以下步骤准备就绪:

  • 已安装好springboot
  • 已经找到要读取的txt文件,并将其放置于项目的资源文件夹中

2. 代码实现

2.1. 读取文件内容到String

import org.springframework.core.io.ClassPathResource;
import org.springframework.util.FileCopyUtils;

import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;

public class FileUtil {

    /**
     * 获取资源文件中的txt文件内容到字符串中
     *
     * @param filePath 资源文件路径,如:/xxx.txt
     * @return 文件内容字符串
     * @throws IOException
     */
    public static String getFileContent(String filePath) throws IOException {
        ClassPathResource resource = new ClassPathResource(filePath);
        InputStream inputStream = resource.getInputStream();
        byte[] bdata = FileCopyUtils.copyToByteArray(inputStream);
        return new String(bdata, StandardCharsets.UTF_8);
    }

}

其中,getFileContent 方法接收文件路径作为参数,通过 ClassPathResource 获取文件输入流 InputStream,再通过 InputStream 获取文件字节流数据,最后通过字节流构建字符串返回。

2.2. 读取文件内容到List

import org.springframework.core.io.ClassPathResource;
import org.springframework.util.FileCopyUtils;

import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;

public class FileUtil {

    /**
     * 获取资源文件中的txt文件内容到List<String>中
     *
     * @param filePath 资源文件路径,如:/xxx.txt
     * @return 文件内容字符串
     * @throws IOException
     */
    public static List<String> getFileContentByLine(String filePath) throws IOException {
        ClassPathResource resource = new ClassPathResource(filePath);
        InputStream inputStream = resource.getInputStream();
        List<String> contents = new ArrayList<>();
        byte[] bdata = FileCopyUtils.copyToByteArray(inputStream);
        String text = new String(bdata, StandardCharsets.UTF_8).trim();
        String[] lines = text.split("\n");

        for (String line : lines) {
            contents.add(line.trim());
        }

        return contents;
    }

}

其中 getFileContentByLine 方法将读取文件内容后通过换行符 "\n" 分割为多行,再将每行内容放入一个新的 List 对象中返回。

3. 使用示例

假设我们有一个文件 example.txt,内容如下:

This is line 1.
This is line 2.
This is line 3.

3.1. 读取文件内容到String

import java.io.IOException;

public class DemoApplication {

    public static void main(String[] args) throws IOException {
        String content = FileUtil.getFileContent("/example.txt");
        System.out.println(content);
    }
}

输出结果如下:

This is line 1.
This is line 2.
This is line 3.

3.2. 读取文件内容到List

import java.io.IOException;
import java.util.List;

public class DemoApplication {

    public static void main(String[] args) throws IOException {
        List<String> contents = FileUtil.getFileContentByLine("/example.txt");
        for (String content : contents) {
            System.out.println(content);
        }
    }
}

输出结果如下:

This is line 1.
This is line 2.
This is line 3.

4. 结束语

以上就是读取txt文本文件内容的完整攻略,希望对大家有所帮助。需要注意的是,在使用 ClassPathResource 读取文件时,需要确保文件在springboot项目的资源文件夹下,如 src/main/resources 目录或其他自定义目录下。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java(springboot) 读取txt文本内容代码实例 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • Spring Bean作用域与生命周期深入讲解

    Spring Bean作用域与生命周期深入讲解 在Spring框架中,可以通过配置Bean的作用域和生命周期来管理Bean对象的创建、销毁以及访问范围等问题。本文将详细讲解Spring Bean的作用域和生命周期相关的知识。 Bean的作用域 Bean的作用域指的是Bean对象在IoC容器中的存活周期和访问范围,Spring框架提供了5种作用域类型,分别是:…

    Java 2023年5月19日
    00
  • springboot oauth2实现单点登录实例

    下面我将详细讲解如何使用Spring Boot OAuth2实现单点登录的完整攻略。主要分为以下几个步骤: 第一步:创建OAuth2授权服务器 在Spring Boot中实现OAuth2授权服务器需要通过添加spring-boot-starter-oauth2-server依赖来完成。具体实现步骤如下: 添加maven依赖 <dependency&gt…

    Java 2023年5月20日
    00
  • JSP实用教程之简易文件上传组件的实现方法(附源码)

    让我来详细讲解一下“JSP实用教程之简易文件上传组件的实现方法(附源码)”的完整攻略。 什么是文件上传组件? 文件上传组件通常用于在网站上让用户上传文件,如图片、文档等。在JSP中,我们可以通过一些Java类和第三方库来实现上传功能。而本文将讲解一个简易的文件上传组件的实现方法。 实现步骤 在JSP页面中添加表单、输入框和上传按钮。 <form met…

    Java 2023年6月15日
    00
  • IIS6 和Tomcat5 的整合

    IIS6 和 Tomcat5 的整合,我们可以通过在 IIS6 中安装 Tomcat 的扩展程序来实现。这个扩展程序可以使 IIS6 和 Tomcat5 之间建立一个联杆使得两者能够进行通信。 以下是整合的步骤: 安装 Tomcat Connector 下载 Tomcat Connector ,一般都是apache-tomcat-connectors-1.2…

    Java 2023年5月20日
    00
  • Ajax 验证用户输入的验证码是否与随机生成的一致

    生成验证码 首先,我们需要生成一个随机的验证码并将其返回给前端。可以使用PHP的GD库来生成一个带有随机数字的图片,也可以直接生成一个包含随机数字的字符串。以下是一个例子: <?php session_start(); // 生成随机的验证码 $code = rand(1000,9999); // 将验证码存储到session中 $_SESSION[‘…

    Java 2023年6月15日
    00
  • java中的文件操作总结(干货)

    Java中的文件操作总结(干货) Java中的文件操作常用于读写文件、创建文件夹、删除文件等操作,本篇将对Java中文件操作的常用技巧进行详细介绍。 1. 创建文件 Java中使用File类来创建文件,可以通过以下代码实现: // 创建文件对象 File file = new File("test.txt"); try { // 创建新的…

    Java 2023年5月20日
    00
  • Spring Boot整合Kafka教程详解

    Spring Boot整合Kafka教程详解 近年来,Kafka 成为了备受关注和喜爱的消息系统,凭借其高吞吐量、低延迟的特性,成为了大型系统中消息传递和处理的首选工具。本文讲解如何在 Spring Boot 项目中整合 Kafka。 1. 添加 Maven 依赖 在 pom.xml 文件中添加以下依赖: <dependencies> <d…

    Java 2023年6月2日
    00
  • Spring FreeMarker整合Struts2过程详解

    下面是“Spring FreeMarker整合Struts2过程详解”的完整攻略: 1. 初步准备 在项目中引入Spring和Struts2框架; 引入FreeMarker模板引擎。 2. 添加Spring配置文件 在Spring配置文件中,需要添加以下内容: <!– 引入FreeMarker视图解析器 –> <bean id=&quo…

    Java 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部