這篇文章將為大家詳細講解有關類路徑下的文件怎么利用Java進行讀取,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

吉安網站制作公司哪家好,找創新互聯建站!從網頁設計、網站建設、微信開發、APP開發、響應式網站開發等網站項目制作,到程序開發,運營維護。創新互聯建站于2013年創立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯建站。
Java 讀取類路徑下的文件
一、工具類代碼ResourceLoadUtil.java
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
public class ResourceLoadUtil {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("ByClazz...\n--------------------------");
System.out.println(loadResourceByClazz(String.class, "/java/lang/String.class"));
System.out.println(loadResourceByClazz(String.class, "/ResourceLoadUtil.class"));
System.out.println();
System.out.println("ByClasLoader...\n--------------------------");
System.out.println(loadResourceByClassLoader("java/lang/String.class"));
System.out.println(loadResourceByClassLoader("ResourceLoadUtil.class"));
System.out.println();
System.out.println("sByClasLoader...\n--------------------------");
System.out.println(loadResourcesByClassLoader("java/lang/String.class"));
System.out.println(loadResourcesByClassLoader("ResourceLoadUtil.class"));
System.out.println(loadResourcesByClassLoader("struts-plugin.xml"));
}
/**
* 根據Class加載資源文件
*
* @param clazz
* @param path
* 以'/'開頭的路徑: 使用絕對路徑尋找文件(以ClassPath為根路徑開始)<br>
* 否則: 使用相對路徑尋找文件(相對于clazz位置路徑開始)
* @return
*/
public static InputStream loadResourceByClazz(Class<?> clazz, String path) {
return clazz.getResourceAsStream(path);
}
/**
* 根據ClassLoader加載資源文件(單個), 使用默認的ClassLoader!
*
* @param path
* 不能以'/'開頭的路徑
* @return
*/
public static InputStream loadResourceByClassLoader(String path) {
return loadResourceByClassLoader(null, path);
}
/**
* 根據ClassLoader加載資源文件(單個), 使用默認的ClassLoader!
*
* @param path
* 不能以'/'開頭的路徑
* @return
*/
public static InputStream loadResourceByClassLoader(ClassLoader cl, String path) {
if (cl == null) {
cl = Thread.currentThread().getContextClassLoader();
}
return cl.getResourceAsStream(path);
}
/**
* 根據ClassLoader加載資源文件(多個),使用默認的ClassLoader!
*
* @param path
* 不能以'/'開頭的路徑
* @return
*/
public static List<URL> loadResourcesByClassLoader(String path) {
return loadResourcesByClassLoader(null, path);
}
/**
* 根據ClassLoader加載資源文件(多個),使用指定的ClassLoader!
*
* @param path
* 不能以'/'開頭的路徑
* @return
*/
public static List<URL> loadResourcesByClassLoader(ClassLoader cl, String path) {
if (cl == null) {
cl = Thread.currentThread().getContextClassLoader();
}
List<URL> urlLst = new ArrayList<URL>();
try {
Enumeration<URL> urlsEnum = cl.getResources(path);
while (urlsEnum.hasMoreElements()) {
URL url = (URL) urlsEnum.nextElement();
urlLst.add(url);
}
} catch (IOException e) {
e.printStackTrace();
}
return urlLst;
}
}二、執行結果
ByClazz... -------------------------- sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@11cfb549 java.io.BufferedInputStream@a422ede ByClasLoader... -------------------------- sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@7f12f614 java.io.BufferedInputStream@35d9dc39 sByClasLoader... -------------------------- [jar:file:/D:/Java/jdk1.6.0_25/jre/lib/rt.jar!/java/lang/String.class] [file:/E:/workspace/JBDS/Spring+Struts2-Integration/target/classes/ResourceLoadUtil.class] [jar:file:/E:/360data/%e9%87%8d%e8%a6%81%e6%95%b0%e6%8d%ae/.m2/repository/org/apache/struts/struts2-spring-plugin/2.3.4.1/struts2-spring-plugin-2.3.4.1.jar!/struts-plugin.xml, jar:file:/E:/360data/%e9%87%8d%e8%a6%81%e6%95%b0%e6%8d%ae/.m2/repository/org/apache/struts/struts2-config-browser-plugin/2.3.4.1/struts2-config-browser-plugin-2.3.4.1.jar!/struts-plugin.xml]
關于類路徑下的文件怎么利用Java進行讀取就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
新聞名稱:類路徑下的文件怎么利用Java進行讀取
文章URL:http://www.yijiale78.com/article36/pehgsg.html
成都網站建設公司_創新互聯,為您提供網站設計公司、移動網站建設、做網站、用戶體驗、網站導航、服務器托管
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯