首页 > 其他分享 >使用MultipartFile遇到的坑

使用MultipartFile遇到的坑

时间:2023-04-13 15:37:14浏览次数:42  
标签:返回 java 遇到 ByteArrayInputStream io 使用 FileInputStream MultipartFile

java使用MultipartFile上传文件时,转换流的时候,遇到java.io.ByteArrayInputStream cannot be cast to java.io.FileInputStream错误

FileInputStream  fileInputStream = (FileInputStream) file.getInputStream();

正常情况下应该返回FileInputStream,但我遇到返回ByteArrayInputStream,因为ByteArrayInputStream与FileInputStream同是InputStream的子类,无法转换。

当文件小于等于10240b(10kb)的时候,返回的是ByteArrayInputStream
当文件大于10kb的时候,返回的FileInputStream

标签:返回,java,遇到,ByteArrayInputStream,io,使用,FileInputStream,MultipartFile
From: https://blog.51cto.com/u_15314615/6188080

相关文章

  • tinymix使用 嵌入式linux tinyplay控制音频
    tinymix控制声音大小使用方法使用字符方式保险  tinymix"LINEOUTvolume""2"有的是输入int但是此处输入输入int时,不行,使用字符串输入可以正常修改 输入tinymix查看选项和使用方法 root@/test_utils/alsa#tinymixMixername:'audiocodec'Numberofcontrols:......
  • 使用vue ui命令创建vue项目
    使用vueui创建项目时的几个选项1、什么是vueuivue3相比vue2多了一个创建项目的方式,那就是使用vueui的命令方式创建项目。vueui的实质就是使用vue官方图形化项目管理工具2、如何使用vueui创建vue项目或者直接选择第二个使用vue3的默认选项,我在这里介绍手动配置2.1......
  • MegEngine 使用小技巧:使用 Optimizer 优化参数
    神经网络的学习的目的是找到使损失函数的值尽可能小的参数。这是寻找最优参数的问题,解决这个问题的过程称为优化(optimization)。而由于参数空间复杂、参数数量庞大等原因,使得神经网络的优化问题非常难。MegEngine的optimizer模块中实现了大量的优化算法,其中Optimizer是所有......
  • 【D02】Bootstrap免费精选模板推荐,附上Django中使用模板教程
    前端模板-AnchorUIKIT前言今天介绍一款制作精良、开源、免费的Bootstrap模板——AnchorUIKIT该模板使用的是Bootstrapv4版本本文将介绍如何在Django中导入该模板的静态资源包并使用介绍官方文档Anchor-afreeBootstrapUIKit(bootcss.com)预览官方文档......
  • 在LINQPad中使用FreeSql查询数据库
    如何在LINQPad中使用FreeSqlLINQPad是一款强大的C#交互式编程环境,它可以让你轻松地编写和测试C#代码片段。除了作为一个交互式编程环境,LINQPad还可以用来连接各种数据源,包括SQL数据库、NoSQL数据库、Web服务等等。此外,LINQPad还支持使用NuGet包管理器来安装和管理第三方库。有时......
  • Android开发startActivityForResult()弃用,推荐使用registerForActivityResult()方法
    SecondActivity中publicclassSecondActivityextendsAppCompatActivity{privatestaticfinalStringTAG="SecondActivity";@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);......
  • django 1.8 官方文档翻译: 3-4-3 使用基于类的视图处理表单
    使用基于类的视图处理表单表单的处理通常有3个步骤:初始的的GET(空白或预填充的表单)带有非法数据的POST(通常重新显示表单和错误信息)带有合法数据的POST(处理数据并重定向)你自己实现这些功能经常导致许多重复的样本代码(参见在视图中使用表单)。为了避免这点,Django提供一系列的通用的......
  • django 1.8 官方文档翻译: 6-6-2 如何使用WSGI 部署
    如何使用WSGI部署Django首要的部署平台是WSGI,它是PythonWeb服务器和应用的标准。Django的startproject管理命名为你设置一个简单的默认WSGI配置,你可以根据你项目的需要做调整并指定任何与WSGI兼容的应用服务器使用。Django包含以下WSGI服务器的入门文档:如何使用Apache和......
  • ubuntu使用记录(5)ubuntu20.04 切换root用户
    ubuntu20.04使用root用户登录系统以普通用户登录系统,创建root用户的密码在终端输入命令:sudopasswdroot先输入当前普通用户(如用户coco)的密码,用于提权。......
  • Qt之QTableWidget的使用
    #ifndefMAINWINDOW_H#defineMAINWINDOW_H#include<QtWidgets>#include<QDebug>#include<QJsonArray>#include<QJsonObject>#include<QJsonValue>#include<QJsonDocument>#defineTABLE_HEADER_STYLE"QHeaderVie......