介绍
这期内容当中小编将会给大家带来有关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 nullJar中的文件怎么利用Java进行读取