寫文字太費勁,直接上**
前台**:
選擇附件:
提交這裡需要注意在form中必須指明編碼格式:enctype="multipart/form-data" 設定表單的mime編碼,預設情況下
注意:在以上這種編碼的情況下,因為上傳的是二進位制資料,所以request是得不到輸入框資料的,我們可以通過上傳元件獲取表單中的輸入資訊。
後台**:
在jfinal中以上三句就已經完成了檔案上傳,當然,我們的前提是在lib中引入cos-26dec2008.jar包
以上採用getfile方法實現上傳單個檔案,還可以通過getfiles實現批量上傳
以上getfile 引數1是表單file的網域名稱稱
引數2是上傳檔案存放的絕對路徑
引數3是檔案的最大長度[即檔案的大小]
引數4是指定檔案編碼
上傳的檔案自定名稱儲存
1.在檔案進行儲存時進行修改檔案命名
2.先完成檔案上傳再進行重新命名
根據本人的實際情況[俺還不是高手],選擇第二種方案比較靠譜,因為第一種方案需要我們對jfinal相關jar包進行自定義或重寫相關方法再打包再使用。
第二種方案實現也就一句話,很方便如下:
...緊接以上的**段
file f = upfile.getfile();
f.renameto(file
file);
這樣就實現了對所上傳的檔案的重新命名,這裡的重新命名檔案寫法如:
這裡用的是時間戳命名。type是檔案型別:如jpg,doc[這個可以自己想辦法擷取]
注意啦----有個小重點
這裡還有乙個關鍵問題就是form中的非file域的值的獲取
jfinal中我們獲取表單中的文字域中與url傳遞引數的值相當方便,getpara()就可以了,但是上面我們已經說了二進位制值這種獲取方式用不上,具體獲取辦法如下:
string para=
getmultipartrequest().getparameter("para");
這裡還要注意一點,以上獲取除file型別的文字域以外的字段值時,我們必須保證檔案已經完成儲存,即getfile這個方法已經執行。
讀取上傳附件的內容與手動上傳附件
上圖中的截圖是el upload元件上傳附件後返回的內容,其中raw欄位的值便是檔案的資訊,如果我們想要讀取檔案中的具體資訊,用以下方式 1 let reader new filereader 2 reader.readastext file.raw 以字串的格式讀取檔案 3 reader.onlo...
實現wordpress上傳檔案自動重新命名
wordpress對於上傳的檔案預設不改變檔案的原名稱,有博主可能由於檔案量大而不願意逐個重新命名檔案,如果直接上傳的話,可能會導致中文檔名的檔案出現亂碼或其它問題,如果附件儲存在同乙個目錄,也可能導致檔名重複而被覆蓋。之前使用zblog dedecms等程式時,系統都會對上傳的檔案自動重新命名,搜...
檔案重新命名與修改長度
rename函式 重新命名 include int rename const char oldname,const char newname 返回值 成功返回0 反之返回 1 rename將oldname檔案更名為newname 如果newname指定的檔案已存在,則刪除newname檔案 重新命名...