base64 转 MultipartFile

后端接收MultipartFile转换为Base64字符串 这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar 阅读详情

base64 文件格式是: 文件头+分号+文件体,例如:data:image/png;base64,VBORw0KGgoAAAANSUhEUgAAAFgAAABtCAYAAAAlIqYqAAAACXBIWX

import org.springframework.web.multipart.MultipartFile;
import sun.misc.BASE64Decoder;
 
import java.io.*;
 
/**
 * base64 转 MultipartFile
 */
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() {
        return System.currentTimeMillis() + Math.random() + "." + header.split("/")[1];
    }
 
    @Override
    public String getOriginalFilename() {
        return System.currentTimeMillis() + (int) Math.random() * 10000 + "." + header.split("/")[1];
    }
 
    @Override
    public String getContentType() {
        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);
    }
 
    public static MultipartFile base64ToMultipart(String base64) {
        try {
            String[] baseStr = base64.split(",");
 
            BASE64Decoder decoder = new BASE64Decoder();
            byte[] b = new byte[0];
            b = decoder.decodeBuffer(baseStr[1]);
            for (int i = 0; i < b.length; ++i) {
                if (b[i] < 0) {
                    b[i] += 256;
                }
            }
            return new Base64DecodedMultipartFile(b, baseStr[0]);
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }
}
base64转File、base64转CommonsMultipartFile 阅读详情

相关推荐

angular中 base64转换为file,使用mutipart上传

angular开发,将base64格式的图片,先转换为file文件格式, 再通过multipart/form-data 上传到后台

www.akmwzjt.net/index.php,FuseQRCode/index.html at 0221cc7b6cdc5324c71e1e2f67df0e1c466577f0 · Liam02...

background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUYAAABuCAIAAADUPS1IAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAGwWSURBVHja7L1plJ3VdSZ...

weixin_29317963的博客 82万+

告别Mac自带终端:iTerm2 + Oh My Zsh 保姆级配置指南(含国内镜像源)

本文提供了一份详细的Mac终端优化指南,涵盖iTerm2、Oh My Zsh和Homebrew的配置流程,特别针对国内用户提供镜像源解决方案。通过安装现代化工具链和优化配置,帮助开发者打造高效、美观的终端工作环境,提升日常开发效率。

weixin_42638178的博客 397

base64编码将字符串转换为图片

base64编码将字符串转换为图片

qq_34709784的博客 1万+

opencv图像去畸变

opencv图像去畸变

智能机器人产学研基地 4866

设计数据库 ER 图太麻烦?不妨试试这两款工具,自动生成数据库 ER 图!!!

告别手动画图,提高效率~

楼下小黑哥 2万+

base64转MultipartFile

/** * base64转MultipartFile */ public class BASE64DecodedMultipartFile implements MultipartFile { private final byte[] imgContent; private final String header; public BASE64DecodedMulti...

Jeremz的博客 3622

硬件原理图分析

文章目录1 硬件原理图分析1.1 MCU部分1.2 NB部分1.3 电源部分 1 硬件原理图分析 1.1 MCU部分 MCU接口部分没啥需要注意,都是常规操作。 1.2 NB部分 U4是用来防静电的。 由于NB的以上几个引脚只支持1.8V,所以这里需要3.3V转1.8V的电路。只要把握住谁改变电平就好分析是怎么实现电平转换的了。 1.3 电源部分 图中的MOS是用来实现USB和电池同时插入时只能USB供电功能的。 ...

木子皿--啥都不会的菜鸟 8169

java base64 转 MultipartFile

java base64 转 MultipartFile package com.xpf.common.utils; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; import java.io.*; /** * @Title:MultipartFileUtils ...

Zarathusa的博客 5557

川崎机器人总线通信_三菱PLC和发那科机器人进行CCLINK总线通信

三菱CCLINK主站模块采用QJ61BT11N,该模块用在Q系列PLC上,如果是5U或3UPLC,可用FX5-CNV-BUS加FX3U-16CCL-M或FX5-CCL-M模块。本教程以Q系列为例CCLINK接线方法如下模块拨码含义如下接线和拨码设置好后,接着在编程软件上设置CCLINK通信参数打开编程软件,在工程导航栏打开参数——网络参数,选中CCLINK打开。打开如下画面起始IO为模块本体占用I...

weixin_42300398的博客 7546

ros入门(八)---TF坐标转换

TF(TransForm),就是坐标转换,包括了位置和姿态两个方面的变换。

weixin_51157015的博客 3388

Base64转MultipartFile

最近做了一个h5人脸采集demo,后端调用百度人脸检测API对图片质量进行把控,图片参数可以是base64类型或者URL形式。前端把图片压缩然后转为base64传回后端,后端进行质量检测合格后把base64转为MultipartFile上传到文件服务器。 Base64转MultipartFile import org.springframework.web.multipart.MultipartFile; import java.io.ByteArrayInputStream; import java.

此人很懒,什么都没有写 6619

【QT开发教程】如何在Qt中使用Protobuf进行高效数据序列化

Protocol Buffers(Protobuf)是Google开发的一种语言中立、平台中立、可扩展的序列化机制,常用于数据交换和存储。Qt作为一个跨平台的C++图形用户界面应用框架,可以与Protobuf结合使用,实现高效的数据序列化和反序列化。本文将介绍如何在Qt中集成和使用Protobuf,包括基本概念、安装步骤、使用示例以及实际应用。

科技改变人类,技术成就未来 1439

SpringBoot JDK高版本如何将 MultipartFile 转base64

SpringBoot 如何将 MultipartFile 转base64) import com.yff.wechat.service.WeatherVinService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMa

weixin_41970358的博客 621

Qt EGLFS 图形后端详解

EGLFS (EGL Full Screen) 是Qt框架在嵌入式Linux系统中的高性能图形显示后端,它提供了直接基于EGL和OpenGL ES的硬件加速渲染解决方案。

浩瀚之水的专栏 511

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

base64文件转MultipartFile文件

在一些项目中,上传图片或者文件过大,这个时候我们就要选择压缩文件,压缩到我们指定的范围内在上传到服务器,当然压缩也是可以放到服务器进行操作的,但是考虑到前端传输时间问题,所以我们一般都是放到前端压缩后在上传。 下面举个实例: 曾经遇见这么一个需求,前端页面需要调用相机拍照,把拍照的图片上传到服务,但是在这个过程中遇见的问题是,ios手机拍照的图片是比较大一般单张图片大小在10M左右,而Andr...

dsn727455218的博客 5645

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

base64 转MultipartFile的子类 CommonsMultipartFile

base64 转MultipartFile的子类 CommonsMultipartFile /** * 获得正确的 图片base64 字符串 * @param imgStr * @return */ public static String getRealImgeStr(String imgStr){ String[] st...

weixin_42319989的博客 750

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

java base64 转 MultipartFile 工具类

import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; import java.io.*; /** * base64 转 MultipartFile */ public class Base64DecodedMultipartFile implements Multipa...

wlj_wangjun的博客 1785

Base64如何转MultipartFile(对流行实现类BASE64DecodedMultipartFile的修正)

全网关于base64转multipartFile最准确的文章

ShuSheng007的程序人生 1万+

BASE64转MultipartFile

package com.yg.utils; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; import java.io.*; /** * base64转MultipartFile */ public class BASE64DecodedMultipartFi...

陈德优的博客 7082

MultipartFile 转base64

MultipartFile 转base64 @RequestMapping(value = "/getfile",method = RequestMethod.POST) @ResponseBody public String saveWxdaka(HttpServletRequest request, String user,long timestamp,@RequestParam("fil...

z19799100的博客 1142

Java实现Base64转multipartFile

业务场景:前端上传的图片以base64编码形式传到后端,后端需要转成multipartFile上传到oss服务器,虽然最后改为前端直传了,但这段代码还是要记录下来 话不多说,直接上代码 package com.test.util; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64De...

anglewang123的博客 9676
上一篇: go语言入门:package command-line-arguments is not a main package
下一篇: go学习笔记
一个大泥球
博客等级 码龄9年 41粉丝 93原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值