●???
在一個(gè)應(yīng)用中(即一個(gè)項(xiàng)目中)定位到某個(gè)資源:
在JSP頁(yè)面中通過(guò)getServletContext().getRealPath (filename);通過(guò)這個(gè)方法只能得到的是該應(yīng)用下的某個(gè)資源。filename前要加“/”,如果filename為””則得到當(dāng)前應(yīng)用的根目錄。(針對(duì)tomcat webapps/TestProject
à
這里TestProject就是一個(gè)應(yīng)用的名稱(chēng),如果在JSP中通過(guò)getServletContext().getRealPath(
“”
)
將得到========
è
.../TestProject
)
在應(yīng)用中filename可以是針對(duì)應(yīng)用目錄的相對(duì)路徑。
?
getServletContext().getResourceAsStream("/file "),
該文件起始目錄是在這個(gè)應(yīng)用的目錄下開(kāi)始的。
?
try
{
?InputStream in? = getServletContext().getResourceAsStream(
"/file.txt"
);
?String file =
""
;
?String temp =
""
;
?BufferedReader buffer =
new
BufferedReader(
new
InputStreamReader(
new
BufferedInputStream(in)));
?
while
((temp=buffer.readLine())!=
null
){
?
?? file += temp;
?}
?buffer.close();
?in.close();
?
out
.print(file);
?
out
.flush();
?}
catch
(Exception ex){
?
??? ex.printStackTrace();
}
●???
根據(jù)類(lèi)裝載的位置來(lái)得到資源
類(lèi)名稱(chēng).class.getResource(filename).getPath();該方式能夠到JVM針對(duì)該類(lèi)裝載的根目錄下的所有資源。filename前要加“/”,filename可以是針對(duì)類(lèi)裝載的根目錄的相對(duì)目錄。
try{
??????? InputStream in? =this.getClass.getResourceAsStream("formate.txt");
??????? String file ="";
??????? String temp = "";
??? BufferedReader buffer = new BufferedReader(new InputStreamReader(new BufferedInputStream(in)));
??????? while((temp=buffer.readLine())!=null){
???????
file += temp;
??????? }
??????? buffer.close();
??????? in.close();
??????? System.out.println(file);
??????
?}catch(Exception ex){
???
ex.printStackTrace();
}
●???
根據(jù)絕對(duì)路徑來(lái)直接得到某資源
try{
??????? String file ="";
??????? String temp = "";
??????? BufferedReader buffer = new BufferedReader(new FileReader("D:/filename"));
??????? while((temp=buffer.readLine())!=null){
???????
file += temp;
??????? }
??????? buffer.close();
??????? System.out.println(file);
?? }catch(Exception ex){
???????
ex.printStackTrace();
?
?}

歡迎大家訪問(wèn)我的個(gè)人網(wǎng)站
萌萌的IT人