zoukankan      html  css  js  c++  java
  • 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,不过不是很好用
  • 相关阅读:
    TF-IDF
    3.路径模板两张表设计
    6.订单支付回调接口
    5.创建订单并生成支付链接接口
    5.使用ES代替whoosh全文检索
    4.docker基本使用
    3.ubuntu安装docker
    2.课程全文检索接口
    1.搜索引擎工作原理
    7.视频播放页面接口开发
  • 原文地址:https://www.cnblogs.com/someblue/p/4225694.html
Copyright © 2011-2022 走看看