方法一:
java:
@RequestMapping("/testFile") public String fileUpload(MultipartFile multipartFile) { String path= "d:\\upload\\test\\"; // 原名 String[] type = multipartFile.getOriginalFilename().split("\\.");//为了获取图片类型 如:jpg String filename=new Date().getTime()+"."+multipartFile.getOriginalFilename().split("\\.")[type.length-1];//改文件名 为:日期.xxx //路径 File file = new File(path); //不存在创建文件夹 if(!file.exists() && !file.isDirectory()){ file.mkdirs(); } File myfile = new File(path+filename); try { multipartFile.transferTo(myfile); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return filename; }
自测:
文件会保存在d盘upload下test下。
方法二:
public static final String FileUpload(MultipartFile multipartFile,String path) throws IOException { String[] type = multipartFile.getOriginalFilename().split("\\.");//为了获取图片类型 如:jpg String filename=new Date().getTime()+"."+multipartFile.getOriginalFilename().split("\\.")[type.length-1];//改文件名 为:日期.xxx //路径 File file = new File(path); //不存在创建文件夹 if(!file.exists() && !file.isDirectory()){ file.mkdirs(); } DataOutputStream out = new DataOutputStream(new FileOutputStream(path+filename));//存放文件的绝对路径 InputStream is = null;// 附件输入流 try { is = multipartFile.getInputStream(); byte[] b=new byte[is.available()];//available 先得知数据流里有多少个字节可以读取 is.read(b); out.write(b); } catch (IOException exception) { exception.printStackTrace(); } finally { if (is != null) { is.close(); } if (out != null) { out.close(); } } return filename; }
原文:https://www.cnblogs.com/DarGi2019/p/12122700.html