EXCEL文件上传,内容格式验证(POI)

jsp页面标签

<!-- 上传走行信息的Excel -->
            <form id="runInfoForm" class="collection_form" action="${basePath}/cs/uploadRunInfo" enctype="multipart/form-data" target="hiddenIFrame" method="post">
                <!--   选择按钮 -->
                <div class="file">
                    <input type="file" name="file" class="files" id="file"/>
                </div>
                <!-- 上传按钮 -->
                       <a href="javascript:void(0)" class="templateDownload" id="btn">上传</a>
                <!-- 模板下载 -->
                <a href="${basePath }/fileDisk/cs/服务器上文件名.xlsx" class="templateDownload">模板下载</a>
            </form>

        <iframe id='hiddenIFrame' name='hiddenIFrame' style="display:none;"></iframe>
     
 

/**
     * controller走行xml上传
     * @param file
     * @param request
     * @param model
     * @return
     * @throws Exception
     */
    @RequestMapping(value="/uploadRunInfo",produces="text/html;charset=UTF-8")
    @ResponseBody
    public String upload(MultipartFile file,HttpServletRequest request,Model model) throws Exception{
        if(null == file || (null != file && 0 == file.getSize())){
            return "请选择一个文件!";
        }
        
        String fileName = file.getOriginalFilename();
        //校验文件名
        boolean flag = csRunInfoService.validateName(fileName);
        if(false == flag){
            return "文件名错误,请核对文件名!";
        }
        
        boolean validateDate = csRunInfoService.validateDate(fileName);
        if(false == validateDate){
            return "上传失败,只能上传当月走行记录!";
        }
        
        //校验文件是否已经存在
        String path = request.getSession().getServletContext()
                .getRealPath("/fileDisk/cs");
        List<String> list = csRunInfoService.fileNameList(path);
        boolean hasFile = list.contains(fileName);
        logger.debug("@@@@@ 服务器中是否已经有文件:" + hasFile);
        
        
        
        File newFile = new File(path + "/" + fileName);
        FileUtils.copyInputStreamToFile(file.getInputStream(), newFile);
        if(!newFile.exists()){
            return "上传失败!";
        }else{
            //解析走行记录xml
            String newPath = path + "/" + fileName;
  

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值