1.问题原因
测试文件下载时,我把同一个文件夹下的一个文件分别上传了两次到文件服务器,打压缩不能打两个文件名相同的文件,所以下载打压缩失败了。
2.解决问题
将上传的文件名加上时间戳,或者下载时给文件加上时间戳,我是使用的下载时给文件加上时间戳的思路
//文件 FileInfoVo fileInfoVo = fileInfoMetas.get(0); //取出文件名(因为这里的文件名是有png、pdf后缀的,所以需要先去除) String fileName = fileInfoVo.getFileName(); //去掉后缀(如.png) String fileNameSub=fileName.substring(0,fileName.lastIndexOf(".")); //时间戳 String s = StringUtil.toString(System.currentTimeMillis()); //文件类型 String fileType = fileInfoVo.getFileType(); //给文件名添加时间戳(这里使用StringBuilder没有使用“+”的原因:1、这个操作是在循环里 2、是3个以上的字符串拼接,为了避免创建多的对象) fileName=new StringBuilder().append(fileNameSub).append(System.currentTimeMillis()).append(".").append(fileType).toString();