ZKX's LAB

从jar包中读取资源文件 jar 包怎么读取外面的资源?

2021-04-27知识3

如何从JAR文件中读取文件 package edu.hxraid;import java.io.*;public class Resource {public void getResource()throws IOException{返回读取指定资源的输入流InputStream is=this.getClass().getResourceAsStream(\"/resource/res.txt\");BufferedReader br=new BufferedReader(new InputStreamReader(is));String s=\";while((s=br.readLine())。null)System.out.println(s);}}我们将java工程下/bin目录中的edu/hxraid/Resource.class和资源文件resource/res.txt一并打包进ResourceJar.jar中,不管jar包在系统的任何目录下,调用jar包中的Resource类都可以获得jar包中的res.txt资源,再也不会找不到res.txt文件了

怎样从JAR文件中读取文件? 进入jar文件其实没有说的那么困难,jar文件本质是一个zip格式的压缩文件,只是把文件后缀名改了,要用Java读取里面的文件也没有那么想象的那么困难。使用相关协议就可以:例如:c盘根目录有一个test.jar文件文件里面有个a.txt文件我们就读取这个a.txt文件文件对应的URL:jar:file:/C:/test.jar。a.txtJava代码:import java.io.IOException;import java.io.InputStream;import java.net.URL;public class TestDouble {public static void main(String[]args)throws IOException {URL url=new URL(\"jar:file:/C:/test.jar。a.txt\");System.out.println(url);InputStream is=url.openStream();byte b[]=new byte[1000];is.read(b);System.out.println(new String(b).trim());}}不是很清楚你到底是从直接将jar中文件解压出来还是通过Java将jar文件中的文件复制出来,如果是想直接解压出文件用winrar就可以了,要用Java复制看下面这个测试,基本上和复制文件差不多:import java.io.*;import java.net.URL;public class CopyFile {public static void copyFormJar(String fileUrl,String dest)throws IOException{int BUFF_SIZE=100000;byte[]buffer=new 。

jar包中怎么读取外部资源, 不是很清楚你的问题描述,我理解是:test.jar是一个带main函数的JAVA可执行程序,那想要读取a.properties文件,可以通过命令行参数形式将路径传入,main 函数去处理参数如 java[-options]-jar jarfile[args.]

#从jar包中读取资源文件

随机阅读

qrcode
访问手机版