Jar中的文件怎么利用Java进行读取

  介绍

这期内容当中小编将会给大家带来有关Jar中的文件怎么利用Java进行读取,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

<强> Java读取Jar中的文件

<强>实现代码:

import  java.io.IOException;,   import  java.io.InputStream,   import  java.net.JarURLConnection,   import  java.net.MalformedURLException,   import  java.net.URL,   import  java.util.jar.JarEntry,   import  java.util.jar.JarFile,   ,   import  org.apache.commons.io.IOUtils,   ,   {public  class  ResourceLoadFromJarUtil    ,/* *大敌;   *,才能@param  args    *,才能@throws  IOException    */才能,   ,public  static  void  main (String [], args), throws  IOException  {,   ,/*,才能资源文件路径,不能以& # 39;/& # 39;字符字符开头,*/,   String 才能;resourcePath =,“struts-plugin.xml",,   ,/*,才能获取类路径下的所有jar路径,*/,   String[],才能cps =, System.getProperty (“java.class.path") .split (“;”),   ,/*,才能读取本地Jar文件,*/,   for 才能;(String  cp : cps), {,   ,,if  (! cp.endsWith (“.jar")), {,   继续,,,,,   ,,},   ,,InputStream 拷贝=,loadResourceFromJarFile (cp, resourcePath),,   ,,if (拷贝!=,null), {,   ,,,System.err.println (IOUtils.toString ()),,   ,,,in.close (),,   ,,},   ,,},   ,/*,才能读取本地Jar文件,*/,   for 才能;(String  cp : cps), {,   ,,if  (! cp.endsWith (“.jar")), {,   继续,,,,,   ,,},   ,,InputStream 拷贝=,loadResourceFromJarURL (cp, resourcePath),,   ,,if (拷贝!=,null), {,   ,,,System.err.println (IOUtils.toString ()),,   ,,,in.close (),,   ,,},   ,,},   ,/*,才能读取网络Jar文件,*/,   InputStream 才能;拷贝=,loadResourceFromJarURL (,   ,,,“http://localhost: 8080/SpringStruts2Integration/struts2-spring-plugin-2.3.4.1.jar", resourcePath),,   if 才能;(拷贝!=,null), {,   ,,System.err.println (IOUtils.toString ()),,   ,,in.close (),,   ,,},   }大敌;   ,/* *大敌;   *,才能读取Jar文件中的资源,   *,才能   *,才能@param  jarPath    *才能,,,本地jar文件路径,   *,才能@param  resPath    *才能,,,资源文件所在jar中的路径(不能以& # 39;/& # 39;字符开头),   *,才能@return 如果资源加载失败,返回null    */才能,   ,public  static  InputStream  loadResourceFromJarFile (String  jarPath, String  resPath), {,   if 才能;(! jarPath.endsWith (“.jar")), {,   ,,return 零,   ,,},   {try 才能;   ,,JarFile  JarFile =, new 使用JarFile (jarPath);,   ,,JarEntry  JarEntry =, jarFile.getJarEntry (resPath);,   ,,if  (jarEntry ==, null), {,   ,,,return 零,,   ,,},   ,,return  jarFile.getInputStream (jarEntry);,   ,,},catch  (IOException  e), {,   ,,e.printStackTrace (),,   ,,return 零,   ,,},   }大敌;   ,/* *大敌;   *,才能读取Jar文件中的资源,   *,才能   *,才能@param  jarUrl    *才能,,,本地jar文件或网络上(ttp://主持人:端口/子路径/jarfile.jar) jar文件路径,   *,才能@param  resPath    *才能,,,资源文件所在jar中的路径(不能以& # 39;/& # 39;字符开头),   *,才能@return 如果资源加载失败,返回null    */才能,   ,public  static  InputStream  loadResourceFromJarURL (String  jarUrl, String  resPath), {,   if 才能;(! jarUrl.endsWith (“.jar")), {,   ,,return 零,   ,,},   URL 才能;URL =,零,,   if 才能;(jarUrl.startsWith (“http://")), {,   {,,try ;   ,,,url =, new  URL (“jar:“, +, jarUrl  +,“!”/?,,   ,,},catch  (MalformedURLException  e), {,   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

Jar中的文件怎么利用Java进行读取