java獲取文件的路徑
Ⅰ java 根據文件獲取文件名及路徑的方法
通過File類獲取文件,然後通過以下兩種方法獲取絕對路徑和名稱。返回類型為String
獲取絕對路徑:file.getAbsolutePath()
獲取名稱: file.getName()
Ⅱ java怎麼獲取本地文件路徑
寫了一個讀取本地文件的方法, File file = new File(htmlFile); FileReader fr = new FileReader(file); BufferedReader br = new BufferedReader(fr); while((s=br.readLine())!=null){ al.add(s); } 在當前類寫了main方法測試了一下是可行的, 但是頁面某方法想調用該方法,不能實現。 總結問題是:只有放在static方法中可行,在其他地方調用都顯示找不到指定文件。 文件結構: 把本地文件放在了web-inf的classes下了,相對路徑寫的(「/file.txt」); 求教為啥static方法可以,其他地方調用不行,這個函數本身不是靜態的啊。
Ⅲ java程序讀取資源文件時路徑如何指定
(1)、request.getRealPath("/");//不推薦使用獲取工程的根路徑
(2)、request.getRealPath(request.getRequestURI());//獲取jsp的路徑,這個方法比較好用,可以直接在servlet和jsp中使用
(3)、request.getSession().getServletContext().getRealPath("/");//獲取工程的根路徑,這個方法比較好用,可以直接在servlet和jsp中使用
(4)、 this.getClass().getClassLoader().getResource("").getPath();//獲取工程classes 下的路徑,這個方法可以在任意jsp,servlet,java文件中使用,因為不管是jsp,servlet其實都是java程序,都是一個 class。所以它應該是一個通用的方法。
0、關於絕對路徑和相對路徑
1.基本概念的理解絕對路徑:絕對路徑就是你的主頁上的文件或目錄在硬碟上真正的路徑,(URL和物理路徑)例 如:C:xyz est.txt 代表了test.txt文件的絕對路徑。http://www.sun.com/index.htm也代表了一個URL絕對路徑。相對路徑:相對與某個基 准目錄的路徑。包含Web的相對路徑(HTML中的相對目錄),例如:在Servlet中,"/"代表Web應用的跟目錄。和物理路徑的相對表示。例 如:"./" 代表當前目錄,"../"代表上級目錄。這種類似的表示,也是屬於相對路徑。另外關於URI,URL,URN等內容,請參考RFC相關文檔標准。RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax,(http://www.ietf.org/rfc/rfc2396.txt)2.關於JSP/Servlet中的相對路徑和絕對路徑。 2.1伺服器端的地址伺服器端的相對地址指的是相對於你的web應用的地址,這個地址是在伺服器端解析的(不同於html和javascript中的相對 地址,他們是由客戶端瀏覽器解析的)
1、request.getRealPath
方法:request.getRealPath("/")
得到的路徑:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\
方法:request.getRealPath(".")
得到的路徑:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\.
方法:request.getRealPath("")
得到的路徑:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest
request.getRealPath("web.xml")
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\strutsTest\web.xml
2、request.getParameter("");
ActionForm.getMyFile();
方法:String filepath = request.getParameter("myFile");
得到的路徑:D:\VSS安裝目錄\users.txt
方法:String filepath = ActionForm.getMyFile();
得到的路徑:D:\VSS安裝目錄\users.txt
--------------------------------------------------
strutsTest 為工程名
myFile 在ActionForm中,為private String myFile;
在jsp頁面中:為<html:file property="myFile"></html:file>
Ⅳ java根據路徑讀取文件
其讀取方法為:
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.IOException;
importjava.util.ArrayList;
publicclassreadFile{
privatestaticArrayList<String>listname=newArrayList<String>();
publicstaticvoidmain(String[]args)throwsException{
readAllFile("C:/Users/HP/Desktop");
System.out.println(listname.size());
}
publicstaticvoidreadAllFile(Stringfilepath){
Filefile=newFile(filepath);
if(!file.isDirectory()){
listname.add(file.getName());
}elseif(file.isDirectory()){
System.out.println("文件");
String[]filelist=file.list();
for(inti=0;i<filelist.length;i++){
Filereadfile=newFile(filepath);
if(!readfile.isDirectory()){
listname.add(readfile.getName());
}elseif(readfile.isDirectory()){
readAllFile(filepath+"\"+filelist[i]);//遞歸
}
}
}
for(inti=0;i<listname.size();i++){
System.out.println(listname.get(i));
}
}
}
Ⅳ java如何獲取文件的相對路徑啊
一個例子,如果有一個Test文件夾裡面有test.java和hello.txt.如果你想用test.java操作hello.txt
只要在test.java中這樣寫File file=new File("hello.txt");//這樣就是相對路徑。如果文件結構是
Test文件夾
... |------test.java
... |------hello.txt
... |------source文件夾
................. |---------world.txt
如果想在test.java中操作world.txt。只要這樣寫File file=new File("source/world.txt");
另外,在web開發中/代表項目文件夾根目錄,當然也有可能代替webapps,區分方法是:如果/開頭的uri是給瀏覽器解析則/代表webapps,如果是給伺服器後台解析,則代表項目文件