加密导出
/**
* 导出问卷管理列表
*/
@RequiresPermissions("develop:psq:export")
@Log(title = "问卷管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(Integer pass, Psq psq) throws IOException {
List<Psq> list = psqService.selectPsqList(psq);
ExcelUtil<Psq> util = new ExcelUtil<Psq>(Psq.class);
AjaxResult ajax = util.exportExcel(list, "问卷管理数据");
System.out.println(getAbsoluteFile(ajax.get("msg").toString()));
FileInputStream fis = new FileInputStream(getAbsoluteFile(ajax.get("msg").toString()));
int b;
List<Integer> bs = new ArrayList<>();
while ((b = fis.read()) != -1) {
bs.add(b ^ pass);
}
FileOutputStream fos = new FileOutputStream(getAbsoluteFile(ajax.get("msg").toString()));
for (int b1:bs) {
fos.write(b1);
}
IOUtils.closeQuietly(fis);
IOUtils.closeQuietly(fos);
System.out.println(ajax);
return ajax;
}
解密导入
/**
* 导入文件进来(上传文件的方法)
*/
@Log(title = "用户管理", businessType = BusinessType.IMPORT)
@PostMapping("/importData")
@ResponseBody
public AjaxResult importData(MultipartFile file, Integer pass, boolean updateSupport) throws Exception {
FileInputStream fis = new FileInputStream(new File(file.getOriginalFilename()));
FileOutputStream fos = new FileOutputStream(getAbsoluteFile(file.getOriginalFilename())); //getAbsoluteFile(file.getOriginalFilename())是路径加名称
int b;
List<Integer> bs = new ArrayList<>();
while ((b = fis.read()) != -1) {
fos.write(b ^ pass);
}
File files = new File(getAbsoluteFile(file.getOriginalFilename()));
FileInputStream input = new FileInputStream(files);
ExcelUtil<Psq> util = new ExcelUtil<Psq>(Psq.class);
file = new MockMultipartFile(file.getName(), input);
List<Psq> drugFolupList = util.importExcel(file.getInputStream());
String message = psqService.imporetDrugFolup(drugFolupList, updateSupport, getLoginName());
return AjaxResult.success(message);
}