「java读取jar包」java读取jar包下的配置文件
本篇文章给大家谈谈java读取jar包,以及java读取jar包下的配置文件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java 怎么读取jar包里的文件
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
public class ReadOutJarFile {
public static void main(String[] args) throws Exception {
String jarName="C://test.jar";//Jar包所在的位置
String fileName="com/111.txt";//文件在jar包里的路径
JarFile jarFile = new JarFile(jarName);//读入jar文件
java中如何获取一个jar包的路径
获取jar包的路径的方法:
xxxxx.class.getProtectionDomain().getCodeSource().getLocation()
其中xxxxx是类名
jar方式运行项目-读取jar包中的文件
在目前的微服务和容器部署的SpringBoot坏境下,我们一般将项目直接打成 jar包的方式运行(java -jar *),我们可能需要读取resources目录下的自定义文件,想在程序运行时找到该目录,并读取需要的文件。
当时我使用 System.getProperty("user.dir") 获取工作目录的坑,本地idea工具运行没问题,但是一但打成jar包,路径会变成jar包所在的目录,无法读取jar内部的文件, 不建议用这种方式 。
由于jar中的文件都属于资源的一种,所以获取需从类加载器进行获取。正确的姿势是采用 this.getClass().getClassLoader().getResourceAsStream() 的方式。
读取自定义文件时,由于getResourceAsStream方法返回的是一个InputStream流,采用InputStreamReader这种方式 最好指定一种编码方式 ,不然可能 中文乱码 !(我在解析xml时中文乱码)
关于java读取jar包和java读取jar包下的配置文件的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。