Maven项目获取资源文件路径并读取资源文件内容

简介: Maven项目获取资源文件路径并读取资源文件内容

使用IDEA新建一个Maven项目

项目.png

项目结构如下

项目结构如下.png

项目主要结构

demo/
    src/
        main/
            java/
            resources/   # 资源路径
    target/
        classes/         # 编译后文件

resources文件夹下的文件在编译后,都放在了根目录classes之下

一、获取项目路径

package com.demo;


import java.net.URL;


public class App {

public static void main(String[] args) {

//项目根路径
URL url1 = App.class.getClassLoader().getResource("");
System.out.println(url1.getPath());

// 项目根路径
URL url2 = App.class.getResource("/");
System.out.println(url2.getPath());

// 文件根路径
URL url3 = App.class.getResource("");
System.out.println(url3.getPath());
}
}

输出结果(省略/demo前的路径,只看后面的路径)

/demo/target/classes/
/demo/target/classes/
/demo/target/classes/com/demo/

二、读取文件

/demo/src/main/resources/name.txt

Tom
Jack
Jobs

读取文件内容

package com.demo;

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


public class App {

public static void main(String[] args) throws IOException {


URL url = App.class.getResource("/name.txt");
String filename = url.getPath();
System.out.println(filename);
// /demo/target/classes/name.txt

BufferedReader reader = new BufferedReader(new FileReader(filename));
String line ;

while ((line = reader.readLine())!= null){
System.out.println(line);
}

reader.close();
}
}

输出结果

Tom
Jack
Jobs

参考

Maven获取resources的文件路径、读取resources的文件

            </div>
目录
相关文章
|
域名解析 运维 JavaScript
只需5步!在轻量应用服务器部署Hexo博客
轻量应用服务器征文活动投稿教程帖,只需5步完成Hexo博客的部署实践,步骤完整,操作性强~
只需5步!在轻量应用服务器部署Hexo博客
|
SQL 分布式计算 资源调度
使用flink SQL Client将mysql数据写入到hudi并同步到hive
本文介绍如何使用flink SQL Client将mysql数据写入到hudi并同步到hive
使用flink SQL Client将mysql数据写入到hudi并同步到hive
|
负载均衡 网络协议 Cloud Native
CentOS环境下安装Nacos
Centos安装Nacos完成入门的学习和开发任务
1716 0
CentOS环境下安装Nacos
|
Web App开发 监控 JavaScript
【Node系列】REPL详解
Node.js REPL(Read-Eval-Print Loop)是一个交互式环境,允许用户在命令行中直接输入JavaScript代码并立即看到结果。REPL是Node.js的一个重要组成部分,它提供了一个方便的方式来测试代码片段、快速尝试新功能或进行调试。
391 1
|
SQL 关系型数据库 MySQL
删库,误清数据怎么办?MySQL数据恢复指南
相信很多同学在面对线上数据库时都畏手畏脚,即使这样都难免手滑,一不小心手一抖就将数据或者是表,库删除。当然一些注重规范的公司,不会给开发人员删除表或者是库的权限,但误删数据是常有的事,那么这种情况发生,我们改怎么办呢?跑路?哈哈,当然删库跑路是句玩笑话,本文就为大家介绍一些数据误删除恢复的办法。
3951 0
|
iOS开发 MacOS Windows
比微信文件传输助手更好用的传输工具|Telegram
比微信文件传输助手更好用的传输工具|Telegram
|
机器学习/深度学习 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-Java全排列公式
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-Java全排列公式
148 0
|
JavaScript
vue 显示 markdown 文件
vue 显示 markdown 文件
228 0
|
数据安全/隐私保护 UED 索引
大文件上传和优化
最近项目里面有一些视频处理的功能,大概流程就是后端拿到文件以后,使用FFmpeg等底层命令进行去水印,裁切等功能,虽然现在是短视频的年代,但是依然会出现一些高分辨率,高时长的大文件视频,这时候因为一些原因,如网络等,失败率会陡增。