单一文件上传
@PostMapping("uploadOne")
public String uploadOne(@RequestParam("file") MultipartFile file, RedirectAttributes redirectAttributes){
if(file.isEmpty()){
redirectAttributes.addFlashAttribute("message","请选择上传文件");
return "redirect:uploadShow";
}
try {
//获取文件并保存
byte[] bytes = file.getBytes();
Path path= Paths.get(UPLOADED_FOLDER+file.getOriginalFilename());
Files.write(path,bytes);
redirectAttributes.addFlashAttribute("message",file.getOriginalFilename()+"文件上传完成");
}catch (IOException e){
e.printStackTrace();
}
return "redirect:uploadShow";
}
Base64文件上传
可以去这个网站将图片加密成Base64码 http://base64.xpcha.com/pic.html
@PostMapping("/uploadBase")
@ResponseBody
public void upload2(String base64) throws IOException {
// TODO BASE64 方式的 格式和名字需要自己控制(如 png 图片编码后前缀就会是 data:image/png;base64,)
final File tempFile = new File("c:\\temp\\test.jpg");//上传文件保存的路径
// TODO 防止有的传了 data:image/png;base64, 有的没传的情况
String[] d = base64.split("base64,");
final byte[] bytes = Base64Utils.decodeFromString(d.length > 1 ? d[1] : d[0]);
FileCopyUtils.copy(bytes, tempFile);
}
本文介绍了两种文件上传的方法:单一文件上传和Base64文件上传。单一文件上传通过MultipartFile处理文件,而Base64文件上传则将图片转换为Base64码进行处理。
1135

被折叠的 条评论
为什么被折叠?



