如果你使用的是eclipse,請檢查編譯是否禁止了非.class文件的編譯輸出,如果這項沒有問題。那麼 src/META-INF/*.* 文件自動輸出到 /WEB-INF/classes/META-INF/*.*。也就是說,最終資源文件在 WEB-INF/classes/META-INF/weibo.xml
使用JAVA 類獲取路徑:
Filef=newFile(getClass().getResource("/META-INF/weibo.xml").getPath());
獲取InputStream:
InputStreaminput=getClass().getResourceAsStream("/META-INF/weibo.xml");
另外,JAVA項目的標准協定(習慣)中的源代碼目錄結構是:
js">src
|--main
||--javaJAVA文件
||--resources資源文件
|--test
|--javaTESTJAVA文件
|--resourcesTEST資源文件
輸出的目錄結構是:
target
|--classesmain/java,main/resource輸出目錄
|--test-classestest/java,test/resources輸出目錄
Ⅱ java上傳圖片獲得項目的路徑
servletContext.getRealPath(File.separator)
Ⅲ java中獲取文件路徑的幾種方式
File的getPath方法得到相對路徑 getAbsolutePath方法得到絕對路徑
舉個例子
String fileName = "yourfile.txt";
File aFile = new File(fileName);//這里可以把路徑拼在fileName前面 可以用相對路徑 也可以用絕對 注意分隔符
System.out.println(aFile.getPath()); //相對路徑
System.out.println(aFile.getAbsolutePath()); //絕對路徑
具體的東西在這里 http://teamojiao.iteye.com/blog/446615
Ⅳ java中怎麼把文件上傳到伺服器的指定路徑
文件從本地到伺服器的功能,其實是為了解決目前瀏覽器不支持獲取本地文件全路徑。不得已而想到上傳到伺服器的固定目錄,從而方便項目獲取文件,進而使程序支持EXCEL批量導入數據。
java中文件上傳到伺服器的指定路徑的代碼:
在前台界面中輸入:
<form method="post" enctype="multipart/form-data" action="../manage/excelImport.do">
請選文件:<input type="file" name="excelFile">
<input type="submit" value="導入" onclick="return impExcel();"/>
</form>
action中獲取前台傳來數據並保存
/**
* excel 導入文件
* @return
* @throws IOException
*/
@RequestMapping("/usermanager/excelImport.do")
public String excelImport(
String filePath,
MultipartFile excelFile,HttpServletRequest request) throws IOException{
log.info("<<<<<<action:{} Method:{} start>>>>>>","usermanager","excelImport" );
if (excelFile != null){
String filename=excelFile.getOriginalFilename();
String a=request.getRealPath("u/cms/www/201509");
SaveFileFromInputStream(excelFile.getInputStream(),request.getRealPath("u/cms/www/201509"),filename);//保存到伺服器的路徑
}
log.info("<<<<<<action:{} Method:{} end>>>>>>","usermanager","excelImport" );
return "";
}
/**
* 將MultipartFile轉化為file並保存到伺服器上的某地
*/
public void SaveFileFromInputStream(InputStream stream,String path,String savefile) throws IOException
{
FileOutputStream fs=new FileOutputStream( path + "/"+ savefile);
System.out.println("------------"+path + "/"+ savefile);
byte[] buffer =new byte[1024*1024];
int bytesum = 0;
int byteread = 0;
while ((byteread=stream.read(buffer))!=-1)
{
bytesum+=byteread;
fs.write(buffer,0,byteread);
fs.flush();
}
fs.close();
stream.close();
}
Ⅳ java如何獲取jsp頁面上傳的文件路徑
java文件中獲得路徑 ThreadcurrentThread()getContextClassLoader()getResource("") //獲得資源文件(class文件)所在路徑 ClassLoadergetSystemResource("") Class_NameclassgetClassLoader()getResource("") Class_Nameclass getResoujava如何獲取jsp頁面上傳的文件路徑
Ⅵ java怎麼獲取本地文件路徑
Java中獲取用戶本地路徑的方法:
用request對象來獲取:request.getRequestURL();
或者用:request.getRequestURI();
Ⅶ 在java中怎麼獲得,本文件的路徑
File類有兩個常用方法可以得到文件路徑一個是:getCanonicalPath(),另一個是:getAbsolutePath(),可以
通過類的實例調用這兩個方法例如file.getAbsolutePath()其中file是File的實例對象。下面是一個具體例子:
publicclassPathTest
{
publicstaticvoidmain(String[]args)
{
Filefile=newFile(".\src\");
System.out.println(file.getAbsolutePath());
try
{
System.out.println(file.getCanonicalPath());
}catch(IOExceptione)
{
e.printStackTrace();
}
}
}
getAbsolutePath()和getCanonicalPath()的不同之處在於,getCanonicalPath()得到的是一個規范的
路徑,而getAbsolutePath()是用構造File對象的路徑+當前工作目錄。例如在上面的例子中.(點號)代表當前目錄。
getCanonicalPath()就會把它解析為當前目錄但是getAbsolutePath()會把它解析成為目錄名字(目錄名字是點號)。
下面是上面程序在我電腦上的輸出:
G:xhuojkonw.src
G:xhuojkonwsrc
Ⅷ java或js(可用jquery)如何獲取上傳文件原始路徑名
上傳文件時,我想獲取客戶端上傳文件的原始路徑。第一考慮,當然是使用js,例如網上可以找到的: function getPath(obj) { if (obj) { if (window.navigator.userAgent.indexOf("MSIE") >= 1) { obj.select(); return document.selection.createRange().text; } else if (window.navigator.userAgent.indexOf("Firefox") >= 1) { if (obj.files) { return obj.files.item(0).getAsDataURL(); } return obj.value; } return obj.value; } } 但這樣的代碼在Ie下還是可行的,但在火狐下不兼容。所以又想通過servlet的第三方工具去做,例如FileUpload,本以為FileItem下的getName()方法能夠得到全路徑名,但結果仍然只得到文件名,很是杯具!求解決方法!? 引用<input type="file" name="file" />至於你說的,不明白你的意思關鍵問題是我要獲得這個路徑,並且傳遞到後台!用js會有兼容性問題,如果用FileUpload上傳,是否可以獲得呢?我是沒有得到的!!! 問題補充:zhanjia 寫道上傳文件一般用input標簽,type為file,瀏覽選擇文件後就是文件在本地的絕對路徑了 引用<input type="file" name="file" />至於你說的,不明白你的意思關鍵的問題是我要獲得這個本地路徑,並且傳到後台!用js可以得到,但存在兼容性問題!?如果用FileUpload呢?我暫時還沒有得到!!! 問題補充:zhanjia 寫道網上的一些解決方案: 一般都是上傳以後在資料庫中保存上傳後的文件路徑,本地路徑一般沒意義 除非像上面所說的文件上傳預覽,還有那麼點用處 我用來做數據介面的,我僅僅是把路徑傳給另一個系統,然後那個系統就可以從這個路徑取文件了。如果先上傳一次,再給對方,這樣不但影響上傳速度,而且會產生大量的垃圾文件。
Ⅸ java中怎麼把文件上傳到伺服器的指定路徑
Stringrealpath=ServletActionContext.getServletContext().getRealPath("/upload");//獲取伺服器路徑
String[]targetFileName=uploadFileName;
for(inti=0;i<upload.length;i++){
Filetarget=newFile(realpath,targetFileName[i]);
FileUtils.File(upload[i],target);
//這是一個文件復制類()裡面就是IO操作,如果你不用這個類也可以自己寫一個IO復制文件的類
}
其中privateFile[]upload;//實際上傳文件
privateString[]uploadContentType;//文件的內容類型
privateString[]uploadFileName;//上傳文件名
這三個參數必須這樣命名,因為文件上傳控制項默認是封裝了這3個參數的,且在action裡面他們應有get,set方法!