(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路徑
1、要解決來問題之前,我們自需要下載java這個軟體,在瀏覽器上搜索,記住下載的具體位置,方便下一步的操作。
❸ 本來文本框裡面是寫文件的路徑如何在java 文本框加一個按鈕 然後文件的路徑重本地的系統中選擇
import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class YFileChooser implements ActionListener{
JFrame frame=new JFrame("文件選擇器實例");
JTabbedPane tabPane=new JTabbedPane();//選項卡布局
Container con=new Container();//布局1
Container con1=new Container();//布局2
JLabel label1=new JLabel("選擇目錄");
JLabel label2=new JLabel("選擇文件");
JTextField text1=new JTextField();
JTextField text2=new JTextField();
JButton button1=new JButton("...");
JButton button2=new JButton("...");
JFileChooser jfc=new JFileChooser();//文件選擇器
YFileChooser(){
jfc.setCurrentDirectory(new File("d:\\"));//文件選擇器的初始目錄定為盤
//下面兩行是取得屏幕的高度和寬度
double lx=Toolkit.getDefaultToolkit().getScreenSize().getWidth();
double ly=Toolkit.getDefaultToolkit().getScreenSize().getHeight();
frame.setLocation(new Point((int)(lx/2)-150,(int)(ly/2)-150));//設定窗口出現位置
frame.setSize(300,150);//設定窗口大小
frame.setContentPane(tabPane);//設置布局
//下面設定標簽等的出現位置和高寬
label1.setBounds(10,10,70,20);
label2.setBounds(10,30,100,20);
text1.setBounds(80,10,120,20);
text2.setBounds(80,30,120,20);
button1.setBounds(210,10,50,20);
button2.setBounds(210,30,50,20);
button1.addActionListener(this);//添加事件處理
button2.addActionListener(this);//添加事件處理
con.add(label1);
con.add(label2);
con.add(text1);
con.add(text2);
con.add(button1);
con.add(button2);
con.add(jfc);
tabPane.add("目錄/文件選擇",con);//添加布局1
tabPane.add("暫無內容",con1);//添加布局2
frame.setVisible(true);//窗口可見
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使能關閉窗口,結束程序
}
public void actionPerformed(ActionEvent e){//事件處理
if(e.getSource().equals(button1)){//判斷觸發方法的按鈕是哪個
jfc.setFileSelectionMode(1);//設定只能選擇到文件夾
int state=jfc.showOpenDialog(null);//此句是打開文件選擇器界面的觸發語句
if(state==1){
return;//撤銷則返回
}
else{
File f=jfc.getSelectedFile();//f為選擇到的目錄
text1.setText(f.getAbsolutePath());
}
}
if(e.getSource().equals(button2)){
jfc.setFileSelectionMode(0);//設定只能選擇到文件
int state=jfc.showOpenDialog(null);//此句是打開文件選擇器界面的觸發語句
if(state==1){
return;//撤銷則返回
}
else{
File f=jfc.getSelectedFile();//f為選擇到的文件
text2.setText(f.getAbsolutePath());
}
}
}
public static void main(String[] args) {
new YFileChooser();
}
}
❹ 在編寫java程序時如何設置默認保存路徑
你說的應該是那個workspace吧。
打開編程工具,eclipse/myeclipse
1.在菜單欄選擇window=>preference(一般是最後一個選項版)
2.如圖:在彈出框畫圈得地權方輸入(workspace)
3.按照圖片中畫圈得地方進行設置。
4.選擇ok。
5.重新打開編程工具,開始的時候出現的框,就是保存路徑。
如果經常要改變的話,最好不要選下面的復選框。
這個是一種方式。
還有一種。
修改編程工具的屬性。右擊,選擇屬性。
在目標後面的文本框已經有的內容的後面」記住是最後一個雙引號的前面「,加上-data需要保存程序的路徑名稱
❺ 新手請教如何改變Java文件存放位置
Java_Home可有可無的,相當於程序一個變數,他的值一般為jdk路徑,不用它時,在配置path或classpath就直接寫絕對路徑即從安裝磁碟寫起,如C:\..
path配置的路徑是jdk下的bin目錄,指定一些指令所在位置,如java和javac
classpath是你.class文件所在位置,默認為jdk的lib目錄下,但這個配置一般都會在最前面加上".;" 點表示當前目錄,即虛擬機會優先找你所在的當前目錄。
注意:如果有多個路徑,windows下是以分號隔開的,而unix系統以冒號隔開。
你要在D:\web\java\f下編譯就先把.java文件放入其中,再用cd命令進入該文件夾,此時只要你的classpath中加入了點號這個配置就可以找到你的編譯後.class文件了
❻ java 中怎麼通過文件選擇器選擇要保存文件的的目錄,然後返回絕對路徑
如果用的是JFileChooser的話可以用getCurrentDirectory().getPath();方法得到你選擇的文件夾路徑。
❼ java做web開發,如何設置一個按鈕選擇文件下載的本地路徑,求大神指導
這個簡單<input type="file" value="瀏覽"/>
❽ java瀵煎嚭鏂囦歡鏃惰╃敤鎴烽夋嫨璺寰勬庝箞寮勶紵
浣跨敤淇濆瓨鏂囦歡瀵硅瘽妗嗭細x0dx0ax0dx0a /**x0dx0a * 淇濆瓨x0dx0a */x0dx0aprivate void saveFile(){x0dx0aJFileChooser dialog = new JFileChooser();x0dx0adialog.setDialogTitle("鍙﹀瓨涓");x0dx0adialog.setFileSelectionMode(JFileChooser.FILES_ONLY);x0dx0adialog.setDialogType(JFileChooser.SAVE_DIALOG);x0dx0adialog.setFileFilter(new TextFileFilter("*.txt", "鏂囨湰鏂囨。(*.txt)"));x0dx0aint result = dialog.showSaveDialog(this);x0dx0aif(result == JFileChooser.APPROVE_OPTION){x0dx0aFile file = dialog.getSelectedFile();x0dx0afileName = file.getAbsolutePath();//寰楀埌鏂囦歡鍏ㄥ悕x0dx0a...x0dx0a}x0dx0a}x0dx0ax0dx0a闄勬枃鏈綾誨瀷榪囨護鍣錛歕x0dx0aimport java.io.File;x0dx0aimport java.util.ArrayList;x0dx0aimport javax.swing.filechooser.FileFilter;x0dx0ax0dx0a/**x0dx0a * 璁劇疆鏂囦歡鎵撳紑瀵硅瘽妗嗙殑鏂囦歡榪囨護鍣╘x0dx0a * @author developerx0dx0a */x0dx0apublic class TextFileFilter extends FileFilter {x0dx0aprivate ArrayList
❾ java軟體怎麼設置保存文件默認路徑
右鍵「我的電腦」,「屬性」,「高級」,「環境變數」,在「環境變數」「新建回」變數名答 classpath
變數值:.;C:\Program Files\Java\jdk1.6.0_07\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_07\lib\tools.jar這是安裝路徑來的,根據自己的安裝路徑來定吧。再「新建」變數名:JAVA_HOME 變數值C:\Program Files\Java\jdk1.6.0_07
選擇「path」,「編輯」,在變數值的最後面添加C:\Program Files\Java\jdk1.6.0_07\bin,注意兩個路徑之間要加分號