1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- package com.imed.costaccount.model;
- import org.springframework.web.multipart.MultipartFile;
- import java.io.*;
- /**
- * @author 李加喜
- * @Package com.imed.costaccount.model
- * @date 2021-08-27 18:54
- */
- public class BASE64DecodedMultipartFile implements MultipartFile {
- private final byte[] imgContent;
- private final String header;
- public BASE64DecodedMultipartFile(byte[] imgContent, String header) {
- this.imgContent = imgContent;
- this.header = header.split(";")[0];
- }
- @Override
- public String getName() {
- // TODO - implementation depends on your requirements
- return System.currentTimeMillis() + Math.random() + "." + header.split("/")[1];
- }
- @Override
- public String getOriginalFilename() {
- // TODO - implementation depends on your requirements
- return System.currentTimeMillis() + (int)Math.random() * 10000 + "." + header.split("/")[1];
- }
- @Override
- public String getContentType() {
- // TODO - implementation depends on your requirements
- return header.split(":")[1];
- }
- @Override
- public boolean isEmpty() {
- return imgContent == null || imgContent.length == 0;
- }
- @Override
- public long getSize() {
- return imgContent.length;
- }
- @Override
- public byte[] getBytes() throws IOException {
- return imgContent;
- }
- @Override
- public InputStream getInputStream() throws IOException {
- return new ByteArrayInputStream(imgContent);
- }
- @Override
- public void transferTo(File dest) throws IOException, IllegalStateException {
- new FileOutputStream(dest).write(imgContent);
- }
- }
|