上传下载所需要的一段代码

  上传或下载时,首先要找到服务器程序所在的文件夹,

如果指定的文件夹不存在,则生成一个,

为了避免重复,要随即生成一个文件名。

  1. FacesContext context = FacesContext.getCurrentInstance();
  2.                 HttpServletRequest request = (HttpServletRequest) context
  3.                         .getExternalContext().getRequest();
  4.                 String filePath = request.getSession().getServletContext().getRealPath(
  5.                     "/")
  6.                     + "export//";  //获得程序所在目录下的export文件夹
  7.                 
  8.                 java.io.File upload = new java.io.File(request.getSession()
  9.                         .getServletContext().getRealPath("/")
  10.                         + "export");
  11.                 if (!upload.exists()) {  //如果export文件夹不存在
  12.                     upload.mkdir();  //创建export文件夹
  13.                 }
  14.                 java.util.Calendar c = java.util.Calendar.getInstance();
  15.                 String newFileName = ""
  16.                     + c.get(Calendar.YEAR)
  17.                     + (("" + c.get(Calendar.MONTH)).length() == 1 ? "0"
  18.                             + (c.get(Calendar.MONTH) + 1)
  19.                             : (c.get(Calendar.MONTH) + 1))
  20.                     + (("" + c.get(Calendar.DATE)).length() == 1 ? ("0" + c
  21.                             .get(Calendar.DATE)) : (c.get(Calendar.DATE)))
  22.                     + (("" + c.get(Calendar.HOUR)).length() == 1 ? ("0" + c
  23.                             .get(Calendar.HOUR)) : (c.get(Calendar.HOUR)))
  24.                     + (("" + c.get(Calendar.MINUTE)).length() == 1 ? ("0" + c
  25.                             .get(Calendar.MINUTE)) : (c.get(Calendar.MINUTE)))
  26.                     + (("" + c.get(Calendar.SECOND)).length() == 1 ? ("0" + c
  27.                             .get(Calendar.SECOND)) : (c.get(Calendar.SECOND)))
  28.                     + "-" + c.get(Calendar.MILLISECOND) + ".xls";    //生成一个随即的文件名,避免重复,
  29.                                                                                                        //这里生成的是.xls,你可以改成自己需要的文件类型
  30.                 String targetFile = filePath + newFileName;  //完整的路径+文件名

targetFile就是完整文件路径名,然后用输出流输出即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值