如果寫乙個類需要動態的獲取某個檔案的位置,從而能夠獲取此檔案的資源。那麼,使用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...