Java操作,springMVC上傳的檔案

2021-09-23 19:17:27 字數 2211 閱讀 3482

上篇文章寫了如何用springmvc上傳檔案,現在記錄一下如何操作上傳的檔案。

操作,無非是讀取檔案,寫入磁碟上另乙個檔案中。(用的io,nio正在研究)。

inputstream fis =null;  

fileoutputstream fos= null;

******dateformat format=new ******dateformat("yyyymmddhhmmss");

1、獲取檔名:

//要上傳的附件名,帶字尾

string accessname = form.gettxtfile().getoriginalfilename();

//附件名擷取,不帶字尾

string shortaccessname=accessname.substring(0, accessname.lastindexof("."));

2、從properties配置檔案中,獲取儲存檔案路徑。

inputstream in = this.getclass().getresourceasstream("/param.properties");

properties props = new properties();

props.load(in);// bookresourcemark.path=d-\\bookresourcemarkfile\\

//獲取存放舊附件的資料夾路徑,每一本圖書單獨建乙個資料夾,這本書的歷史附件都移到這個目錄下 ,分pdf和epub

string dirpath = props.get("bookresourcemark.path").tostring().replace("-",":")+shortaccessname+"\\"+form.getaccess().gettype()+"\\";

//要上傳的資料夾的路徑 

string path="這裡面是檔案儲存路徑";

//將改資料夾路徑下的原附件移到別的資料夾中 ,加時間重新命名

file oldfile=new file(path+"\\"+accessname);

if(oldfile.exists())

string movename= shortaccessname+"-"+format.format(new date());

file newfile = new file(dirpath+ file.separator+(movename+"."+form.getaccess().gettype()));

oldfile.renameto(newfile);

condition.clear();

}

4、儲存新檔案。

//判斷當前路徑是否存在,如果路徑不存在,建立路徑。

file pathfile=new file(path);

if(!pathfile.exists())

5、開始上傳檔案

上傳檔案 

方法1、是制定固定長度的位元組陣列,每次取出固定的長度。

inputstream fis = form.gettxtfile().getinputstream();  

fileoutputstream fos = new fileoutputstream(path + "\\" + accessname);

byte b = new byte[1024];

int read = fis.read(b);

while (read != -1)

fos.close();

方法2、commonsmultipartfile中,commonsmultipartfile.getfileitem().get(),直接獲取所有資料的位元組陣列,

byte b = form.gettxtfile().getfileitem().get();

fileoutputstream fos = new fileoutputstream(path + "\\" + accessname);

fos.write(b);

fos.close();

這些就是操作(儲存上傳的檔案,到另乙個檔案,或位置)檔案的**了。

關於springMVC操作

基礎搭建步驟 web.xml檔案 org.springframework.web.context.contextloaderlistener spring org.springframework.web.servlet.dispatcherservlet contextconfiglocation ...

springmvc 切面記錄操作日誌

自定義註解 是否添操作日誌註解 target retention retentionpolicy.runtime documented public inte ce methodlog 操作日誌記錄表 public class operationlog 切面操作 系統日誌,記錄 執行相關資訊 aut...

Java框架(十四)之springMVC的註解開發

1.配置springmvc配置檔案 對映器和介面卡的註解版 mvc annotation driven 2.配置web.xml檔案 springmvc org.springframework.web.servlet.dispatcherservlet contextconfiglocation cl...