getResourceAsStream的理解和用法

2021-09-19 22:51:15 字數 614 閱讀 2877

如果寫乙個類需要動態的獲取某個檔案的位置,從而能夠獲取此檔案的資源。那麼,使用class.getresourceasstream()方法便可以。

這樣就不用每次去修改**中檔案的絕對位址或詳細位址了。

這是它的原始碼:

我們可以看到它最終返回了乙個輸入流,也就是返回乙個inputstream物件方便對此檔案資源通過io流進行獲取。

@callersensitive

public inputstream getresourceasstream(string name)

// resource not encapsulated or in package open to caller

string mn = thismodule.getname();

classloader cl = getclassloader0();

try else if (cl instanceof builtinclassloader) else

} catch (ioexception | securityexception e)

}

下面是我找的乙個比較好的對getresourceasstream用法的解釋,共勉!

getResourceAsStream用法小結

path 不以 開頭時預設是從此類所在的包下取資源,以 開頭則是從classpath根下獲取。其實是通過path構造乙個絕對路徑,最終還是由classloader獲取資源。預設則是從classpath根下獲取,path不能以 開頭,最終是由classloader獲取資源。例如 com.x.y 下有類...

用gdb理解C巨集 和

在unix linux核心 以及gnu libc源 中,有兩個c的巨集被廣泛使用。例如 glibc 2.25 sysdeps powerpc powerpc64 sysdep.h 207 define tostring s s 208 define stringify s tostring s 20...

Python property原理解析和用法例項

在我們定義資料庫欄位類的時候,往往需要對其中的類屬性做一些限制,一般用get和set方法來寫,那在python中,我們該怎麼做能夠少寫 又能優雅的實現想要的限制,減少錯誤的發生呢,這時候就需要我們的 property閃亮登場啦,巴拉巴拉能量 用 來舉例子更容易理解,比如乙個學生成績表定義成這樣 cl...