Java如何读取Jar中的资源.docx
上传人:努力****凌芹 上传时间:2024-09-15 格式:DOCX 页数:7 大小:11KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

Java如何读取Jar中的资源.docx

Java如何读取Jar中的资源.docx

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Java如何读取Jar中的资源Java如何读取Jar中的资源导语:在开发java项目的.时候,经常会用到jar包,这里就说下如何读取,需要的朋友可以参考下:详解Java读取Jar中资源文件及实现代码:直接上代码,文章的注释部分说的比较清楚,大家可以参考下,工具类源代码:ResourceLoadFromJarUtil.java实现代码:importjava.io.IOException;importjava.io.InputStream;importjava.net.JarURLConnection;importjava.net.MalformedURLException;importjava.net.URL;importjava.util.jar.JarEntry;importjava.util.jar.JarFile;importorg.apache.commons.io.IOUtils;publicclassResourceLoadFromJarUtil{/***@paramargs*@throwsIOException*/publicstaticvoidmain(String[]args)throwsIOException{/*资源文件路径,不能以'/'字符字符开头*/StringresourcePath="struts-plugin.xml";/*获取ClassPath下的所有jar路径*/String[]cps=System.getProperty("java.class.path").split(";");/*读取本地Jar文件*/for(Stringcp:cps){if(!cp.endsWith(".jar")){continue;}InputStreamin=loadResourceFromJarFile(cp,resourcePath);if(in!=null){System.err.println(IOUtils.toString(in));in.close();}}/*读取本地Jar文件*/for(Stringcp:cps){if(!cp.endsWith(".jar")){continue;}InputStreamin=loadResourceFromJarURL(cp,resourcePath);if(in!=null){System.err.println(IOUtils.toString(in));in.close();}}/*读取网络Jar文件*/InputStreamin=loadResourceFromJarURL("http://localhost:8080/SpringStruts2Integration/struts2-spring-plugin-2.3.4.1.jar",resourcePath);if(in!=null){System.err.println(IOUtils.toString(in));in.close();}}/***读取Jar文件中的资源**@paramjarPath*本地jar文件路径*@paramresPath*资源文件所在jar中的路径(不能以'/'字符开头)*@return如果资源加载失败,返回null*/publicstaticInputStreamloadResourceFromJarFile(StringjarPath,StringresPath){if(!jarPath.endsWith(".jar")){returnnull;}try{JarFilejarFile=newJarFile(jarPath);JarEntryjarEntry=jarFile.getJarEntry(resPath);if(jarEntry==null){returnnull;}returnjarFile.getInputStream(jarEntry);}catch(IOExceptione){e.printStackTrace();returnnull;}}/***读取Jar文件中的资源**@paramjarUrl*本地jar文件或网络上(ttp://host:port/subpath/jarfile.jar)jar文件路径*@paramresPath*资源文件所在jar中的路径(不能以'/'字符开头)*@return如果资源加载失败,返回null*/publicstaticInputStreamloadResourceFromJarURL(StringjarUrl,Stri