• Java 读取jar内的文件的超简便方法


    坑爹的java课程设计,偏要用jar来运行

    读取、存储jar内文件的支持也好低

    存储方法:

    进入jar文件其实没有说的那么困难,jar文件本质是一个zip格式的压缩文件,只是把文件后缀名改了,要用Java读取里面的文件也没有那么想象的那么困难。使用相关协议就可以: 
    例如:c盘根目录有一个test.jar文件文件里面有个a.txt文件我们就读取这个a.txt文件
    文件对应的URL:
    jar:file:/C:/test.jar!/a.txt 
    
    
     1 import java.io.IOException; 
     2 import java.io.InputStream; 
     3 import java.net.URL; 
     4 
     5 public class TestDouble { 
     6 public static void main(String[] args) throws IOException { 
     7 URL url=new URL("jar:file:/C:/test.jar!/a.txt"); 
     8 System.out.println(url); 
     9 InputStream is=url.openStream(); 
    10 byte b[]=new byte[1000]; 
    11 is.read(b); 
    12 System.out.println(new String(b).trim()); 
    13 } 
    14 }

    如果想不依赖绝对路径,那就先获取运行jar时候的当前绝对路径,然后加上要读的目录

    把方法内换一下

            String jarPath = Main.class.getProtectionDomain().getCodeSource().getLocation().getFile();
            URL url=new URL("jar:file:" + jarPath + "!/in.txt"); 

    关于存储。jar的设计理念就是一个只读文件,查了java文档,有个java.util.jar.JarOutputString,不过不是很好用
  • 相关阅读:
    微信H5跳转到小程序
    对比React的hooks与Vue的composition
    H5网页在ios,android,微信中打开手机中的地图导航
    MySQL学习笔记(一)
    Matlab学习笔记(五)
    Matlab学习笔记(四)
    Matlab学习笔记(三)
    Matlab学习笔记(二)
    Matlab学习笔记(一)
    Python学习笔记(四)
  • 原文地址:https://www.cnblogs.com/someblue/p/4225694.html
Copyright © 2020-2023  润新知