-
與使用smartupload組件一樣 使用struts2時(shí),也設(shè)置enctype查看全部
-
servlet方式 上傳文件思路查看全部
-
文件下載原理: 1、設(shè)置 response對(duì)象的 Content-Type 值'application/octet-stream' 'application/x-msdownload' 2、設(shè)置 response對(duì)象的 Content-Disposition 值'attachment;filename=**' 2、response.getOutputStream 返回的對(duì)象來寫入客戶端查看全部
-
表單enctype 三種方式: 1、application/x-www-form-urlencoded 默認(rèn)編碼,只取表單中value值,處理為URL編碼 2、mutipart/form-data 二進(jìn)制流方式,把文件域指定文件內(nèi)容封裝 3、text/plain 通過表單發(fā)送郵件查看全部
-
表單提交 enctype='mutipart/form-data'查看全部
-
文件下載原理查看全部
-
文件上傳下載原理查看全部
-
文件下載原理查看全部
-
文件上傳下載原理查看全部
-
文件上傳原理查看全部
-
action中: public class UpLoadAction extends ActionSupport { private File upload; private String uploadFileName; private String uploadContentType; //反饋成功上傳結(jié)果給客戶端 private String result; 生成set()方法 @Override public String execute() throws Exception { //獲得服務(wù)器端保存上傳文件的路徑 String path=ServletActionContext.getServletContext().getRealPath("/")+"images"; File savefile=new File(path); if(!savefile.exists()) { savefile.mkdirs(); } //使用FileUtils類的copyFile(File 1,File 2)靜態(tài)方法實(shí)現(xiàn)文件的覆蓋,FileUtils類是commons.io.包下的類. //該方法有兩個(gè)File類型的參數(shù),即將參數(shù)中的f1文件覆蓋到參數(shù)中f2的文件中. FileUtils.copyFile(upload, new File(savefile,uploadFileName)); //此處該方法第一個(gè)參數(shù)為客戶端上傳的文件,第二個(gè)參數(shù)是服務(wù)器端保存上傳文件目錄中以上傳文件為名的文件(本身是不存在的,但copyFile()方法會(huì)自動(dòng)創(chuàng)建,因?yàn)閮?nèi)部是會(huì)用到輸出流,不存在則會(huì)自動(dòng)創(chuàng)建,可以使用自動(dòng)義的文件名,該文件中的內(nèi)容最后會(huì)被覆蓋). //在jsp頁面中通過<%@ taglib uri="/struts-tags" prefix="s"%>引入標(biāo)簽庫. //在合適位置中使用<s:property value="result">即可獲取到該屬性值. result="上傳成功"; return SUCCESS; } }查看全部
-
smartupload文件下載 response.setContentType("application/x-msdownload"); response.setHeader("Content-Disposition", "attachment;filename=test.zip"); String path = "E:/Javajava/workspace for j2ee/Study2/WebContent/images"; String[] filenames = request.getParameterValues("filename"); String str = ""; ZipOutputStream zos = new ZipOutputStream(response.getOutputStream()); for (String filename : filenames) { File file = new File(path, filename); str += filename + " "; zos.putNextEntry(new ZipEntry(filename)); FileInputStream fis = new FileInputStream(file); byte b[] = new byte[1024]; int n = 0; while ((n = fis.read(b)) != -1) { zos.write(b, 0, n); } zos.flush(); fis.close(); } zos.setComment("download success" + " " + str); zos.flush(); zos.close();查看全部
-
smartupload文件上傳 // 遍歷每個(gè)上傳的文件 for (int i = 0; i < su.getFiles().getCount(); i++) { com.jspsmart.upload.File tempFile = su.getFiles().getFile(i); System.out.println("====="); System.out.println("表單當(dāng)中name的值" + tempFile.getFieldName()); System.out.println("上傳文件名" + tempFile.getFileName()); System.out.println("上傳文件的大小" + tempFile.getSize()); System.out.println("上傳文件的拓展名" + tempFile.getFileExt()); System.out.println("上傳文件全名" + tempFile.getFilePathName()); System.out.println("====="); } request.setAttribute("result", result); request.getRequestDispatcher("jsp/02.jsp").forward(request, response);查看全部
-
smartupload文件上傳 } catch (Exception e) { result = "上傳失敗"; if (e.getMessage().indexOf("1015") != -1) { result = "上傳失?。荷蟼魑募愋筒徽_"; } else if (e.getMessage().indexOf("1010") != -1) { result = "上傳失敗:上傳文件類型不正確"; } else if (e.getMessage().indexOf("1105") != -1) { result = "上傳失?。荷蟼魑募拇笮〈笥谠试S上傳的文件最大值"; } else if (e.getMessage().indexOf("1110") != -1) { result = "上傳失敗:上傳文件的總大小大于允許上傳的文件最大值"; } e.printStackTrace(); }查看全部
-
smartupload文件上傳 // 設(shè)置上傳文件保存路徑 String filePath = "E:/Javajava/workspace for j2ee/Study2/WebContent/WEB-INF/file"; File file = new File(filePath); if (!file.exists()) { file.mkdir(); } String result = "上傳成功"; SmartUpload su = new SmartUpload(); try { // 初始化對(duì)象 su.initialize(getServletConfig(), request, response); // 設(shè)置上傳文件大小 su.setMaxFileSize(1024 * 1024 * 10); // 設(shè)置所有文件的大小 su.setTotalMaxFileSize(1024 * 1024 * 100); // 設(shè)置上傳文件的類型 su.setAllowedFilesList("txt,jpg,gif"); // 設(shè)置禁止上傳的文件類型 su.setDeniedFilesList("rar,jsp,js"); // 上傳文件 su.upload(); int count = su.save(filePath); System.out.println("上傳成功了" + count + "個(gè)文件");查看全部
舉報(bào)
0/150
提交
取消