欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

web上传下载

程序员文章站 2022-07-13 12:46:13
...

提示存储地址的下载

		public ActionForward exportExcel(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {  
                 String path;
		 //创建临时文件夹  
		 path=request.getContextPath()+"\\shopCart";  
		 new File(path).mkdirs();  
		   //创建临时文件,存放需要下载的内容  
		 path=path+"\\"+new Date().getTime()+".xls";  
		 File file = new File(path);  
		 //设置头信息,声明文件类型,文件默认名称
		 response.setContentType("application/msexcel");
		 response.setHeader("content-disposition", "attachment; filename=order_"+new Date().getTime()+".xls");
		 //读取临时文件内容,将内容写到客户端  
		 OutputStream os;  
		 try {  
		     os = response.getOutputStream();  
		     java.io.BufferedInputStream bis = new java.io.BufferedInputStream(new java.io.FileInputStream(file));  
		     byte[] readdata = new byte[1024];  
		     while (bis.read(readdata) != -1) {  
		         os.write(readdata);  
		     }  
		     os.flush();  
		     os.close();  
		     bis.close();  
		    //将临时文件删除  
		     file.delete();  
		     response.sendRedirect("/ecman/searchMerchandise.jsp");  
		 } catch (IOException e1) {  
		     e1.printStackTrace();  
		 }  
		 return null;  
 

 

基于struts 上传操作

首先請確定commons-fileupload.jar有在WEB-INF/lib目錄下。   

FormBean:                                                       
import   javax.servlet.http.*;   
import   org.apache.struts.action.*;   
import   org.apache.struts.upload.*;                                                         
public   class   UploadForm   extends   ActionForm   {   
        private   FormFile   file;                                                      
        public   void   setFile(FormFile   file)   {   
                this.file   =   file;   
        }                                                          
        public   FormFile   getFile()   {   
                return   file;   
        }                                                         
        public   void   reset(ActionMapping   mapping,   HttpServletRequest   req)   {   
                file   =   null;   
        }   
} 
使用struts及html标签
<html:form  action= "/cart.do" method= "post" enctype= "multipart/form-data">     
<html:hidden property="status" value="importExcel"/>
	 文件路径: <html:file property= "excelFile"/>     
	<input type="submit" value="上传"/>     
	</html:form>
<form action="/cart.do" method="post" enctype="multipart/form-data" name="excelForm">
	<input type="hidden" name="status" value="importExcel"/>
	文件路径:<input name="excelFile" type="file" id="excelFile"/>
	<input type="submit" name="Submit" value="提交"/>
</form>
   
 ction: 
import   java.io.*;   
import   javax.servlet.http.*;   
import   org.apache.struts.action.*;   
import   org.apache.struts.upload.*;   
public   class   UploadAction   extends   Action   {   
        public   ActionForward   execute(ActionMapping   mapping,   
                                                                  ActionForm   form,   
                                                                  HttpServletRequest   request,   
                                                                  HttpServletResponse   response)    throws   Exception   {   
                UploadForm   fileForm   =   (UploadForm)   form;   
                FormFile   file   =   fileForm.getFile();   
                FileOutputStream   fileOutput   =   new   FileOutputStream( "/home/caterpillar/files/ "   +   file.getFileName());                                                                                                                                                                        
                fileOutput.write(file.getFileData());   
                fileOutput.flush();   
                fileOutput.close();                                                                                                                                                                                           
                return   mapping.findForward( "success ");   
        }   
}