使用URL存取jar文件的例子
<div class="highlighter">[*]package net.java2000.net;
[*]<span />
[*]<span />import java.io.IOException;
[*]<span />import java.net.JarURLConnection;
[*]<span />import java.net.MalformedURLException;
[*]<span />import java.net.URL;
[*]<span />import java.util.jar.JarEntry;
[*]<span />import java.util.jar.JarFile;
[*]<span />
[*]<span />/**
[*] * 使用URL存取jar文件。
[*] *
[*] * @author 赵学庆,Java世纪网(java2000.net)
[*] *
[*] */<span />
[*]public class URLGetJarFile {
[*]<span />
[*] public static void main(String[] args) {
[*] try {
[*] // 创建指向jar文件的URL<span />
[*] URL url = new URL("jar:http://hostname/my.jar!/");
[*]<span />
[*] // 创建指向文件系统的URL<span />
[*] url = new URL("jar:file:/c:/almanac/my.jar!/");
[*]<span />
[*] // 读取jar文件<span />
[*] JarURLConnection conn = (JarURLConnection) url.openConnection();
[*] JarFile jarfile = conn.getJarFile();
[*]<span />
[*] // 如果URL没有任何入口,则名字为null<span />
[*] String entryName = conn.getEntryName(); // null<span />
[*]<span />
[*] // 创建一个指向jar文件里一个入口的URL<span />
[*] url = new URL("jar:file:/c:/almanac/my.jar!/com/mycompany/MyClass.class");
[*]<span />
[*] // 读取jar文件<span />
[*] conn = (JarURLConnection) url.openConnection();
[*] jarfile = conn.getJarFile();
[*]<span />
[*] // 此时的入口名字应该和指定的URL相同<span />
[*] entryName = conn.getEntryName();
[*]<span />
[*] // 得到jar文件的入口<span />
[*] JarEntry jarEntry = conn.getJarEntry();
[*] } catch (MalformedURLException e) {
[*] } catch (IOException e) {
[*] }
[*]<span />
[*] }
[*]<span />
[*]}
[*]<span />
[*]<span />
页:
[1]