首页 > 代码库 > web文件上传和下载
web文件上传和下载
文件的上传和下载是网络编程经常出现的问题,虽然比较基础但是通常用的时候就会忘记一些细节,因此在这里将一些细节po出来。
1.文件下载
文件的下载比较简单,前端我们只需要进行一次get请求即可:
1 <button onclick=‘getFile();‘>Import</button>2 3 <script>4 function getFile(){5 var url = "/istore/servlet/b2b/group/downloadModel.do";6 window.location.href=url; //此处写入要跳转的sevlet 7 }8 </script>
后台的sevelet将内容传回给前台这里我自己创建了一个excel文件作为输出:
1 public void downloadModel(HttpServletRequest request, 2 HttpServletResponse response) throws IOException, RowsExceededException, WriteException { 3 4 String filename = "model.xls";//保存的默认文件名 5 6 response.setHeader("content-disposition", "attachment;filename=" 7 + URLEncoder.encode(filename, "UTF-8"));//将文件名设置为返回的头部信息(十分重要) 8 OutputStream out = response.getOutputStream(); //设置返回的数据流 9 WritableWorkbook workbook = Workbook.createWorkbook(out);10 WritableSheet sheet = workbook.createSheet("inputlist", 0);11 Label lab = null;12 lab = new Label(0, 0, "LogonId");13 sheet.addCell(lab);//以上为创建excel过程,使用jexcel14 workbook.write();//写入15 workbook.close();16 }
2.文件上传
这里前台只写出js代码(使用了jQuery语法)
function Upload(){ var file = $("#uploadfile") file.after(file.clone().val("")); file.remove(); $("#groupId").val(xgroup_id); var url = "/istore/servlet/b2b/group/bulkUpload.do"; //判断文件是否为空 var uploadfile = jQuery("#uploadfile").val(); if(uploadfile=="") { alert("Please select the file you want to upload!"); return; }//判断拓展名是否正确 if(uploadfile.toLowerCase().indexOf(‘.xls‘)==-1){ alert("The file you choosed is not a valid file,please select the valid files(extension ‘.xls‘)!"); return; }else{ $(this).dialog( "close" ); //提交请求 var options ={url:‘bulkUpload.do‘,type:‘post‘,dataType:‘json‘, success:function(data){ alert(data); } }
后台servlet:
public String Upload_member(HttpServletRequest request, HttpServletResponse response, @RequestParam("uploadfile") MultipartFile file) { PrintWriter out = null;//上传的编码格式 response.setContentType("text/html;charset=UTF-8"); String result = null; try {//print是我写的一个输出函数,是将数据流内容输出的,uploadfile会将内容保存,并返回保存状态 print(file.getInputStream()); result = uploadFile(file, request); } catch (Exception e) { } return JSONObject.toJSONString(result); }
这里没有具体写出输出数据流和把数据流保存至文件,读者可以根据自己情况自行查找解决办法。
web文件上传和下载
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。