java獲取檔案目錄或路徑

2021-09-01 15:21:18 字數 2321 閱讀 4144

web 上執行

1:this.getclass().getclassloader().getresource("/").getpath();

this.getclass().getclassloader().getresource("").getpath(); 得到的是 classpath的絕對uri路徑。

如:/d:/jboss-4.2.2.ga/server/default/deploy/hp.war/web-inf/classes/

system.getproperty("user.dir");

this.getclass().getclassloader().getresource(".").getpath(); 得到的是 專案的絕對路徑。

如:/d:/jboss-4.2.2.ga/server/default/deploy/hp.war

2:this.getclass().getresource("/").getpath();

this.getclass().getresource("").getpath(); 得到的是當前類 檔案的uri目錄。不包括自己!

如:/d:/jboss-4.2.2.ga/server/default/deploy/hp.war/web-inf/classes/com/jebel/helper/

this.getclass().getresource(".").getpath(); x 不 能執行

3:thread.currentthread().getcontextclassloader().getresource("/").getpath()

thread.currentthread().getcontextclassloader().getresource("").getpath() 得到的是 classpath的絕對uri路徑。

如:/d:/jboss-4.2.2.ga/server/default/deploy/hp.war/web-inf/classes/

thread.currentthread().getcontextclassloader().getresource(".").getpath() 得到的是 專案的絕對路徑。

如:/d:/jboss-4.2.2.ga/server/default/deploy/hp.war

在本地執行中

1:this.getclass().getclassloader().getresource("").getpath();

this.getclass().getclassloader().getresource(".").getpath(); 得到的是 classpath的絕對uri路徑。

如:/d:/myprojects/hp/webroot/web-inf/classes

this.getclass().getclassloader().getresource(".").getpath(); x 不 能執行

2:this.getclass().getresource("").getpath();

this.getclass().getresource(".").getpath(); 得到的是當前類 檔案的uri目錄。不包括自己!

如:/d:/myprojects/hp/webroot/web-inf/classes/com/jebel/helper/

/d:/myprojects/hp/webroot/web-inf/classes/ 得到的是 classpath的絕對uri路徑。

如:/d:/myprojects/hp/webroot/web-inf/classes

3:thread.currentthread().getcontextclassloader().getresource(".").getpath()

thread.currentthread().getcontextclassloader().getresource("").getpath() 得到的是 classpath的絕對uri路徑。。

如:/d:/myprojects/hp/webroot/web-inf/classes

thread.currentthread().getcontextclassloader().getresource("/").getpath() x 不 能執行

最後 在web應用程式中,我們一般通過servletcontext.getrealpath("/")方法得到web應用程式的根目錄的絕對路徑。

還有request.getcontextpath(); 在weblogic中要用request.getservletcontext().getcontextpath();但如果打包成war部署到weblogic伺服器,專案內部並沒有檔案結構的概念,用這種方式是始終得到null,獲取不到路徑,目前還沒有找到具體的解決方案。

使用os模組動態獲取目錄或檔案路徑

在介面自動化測試框架中,我們的 除了能在本地執行,也能在不在修改 的前提下在其他的環境下能夠執行,這樣才能達到高復用性和低維護成本,我們在介面測試的模組呼叫中,會定義很多相關路徑,而這些路徑必須使用相對路徑且能夠動態獲取才能夠滿足框架的基本要求,因此我們可以單獨建立乙個constants模組處理該問...

Java刪除檔案或目錄

刪除指定的檔案,返回刪除是否成功 param filepath 要刪除的檔案路徑,請使用絕對路徑如 d 1.jpg return boolean 刪除是否成功,如果檔案不存在,或不是檔案,或刪除時異常,則返回為false public static boolean deletefile string...

JAVA 類檔案獲取路徑

windows linux 下通用。當前工程的目錄是 d www jsp projectabc,可以使用以下3個方法 1 在工程中的任何乙個 類中,可以這樣獲取路徑 通過 this.getclass getclassloader getresource getpath 返回的是編譯之後的classe...