首页 > 其他分享 >上传文件异常 FileInputStream ByteArrayInputStream

上传文件异常 FileInputStream ByteArrayInputStream

时间:2022-10-24 11:37:19浏览次数:99  
标签:返回 文件 java ByteArrayInputStream FileInputStream 上传

问题

文件上传的时候遇到如下异常

java.lang.ClassCastException: java.io.ByteArrayInputStream cannot be cast to java.io.FileInputStream

出错的代码:

FileOutputStream fos = null;
fis = (InputStream) file.getInputStream();

正常情况下应该返回FileInputStream,但遇到返回ByteArrayInputStream。

查了原因如下

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

解决

FileInputStream改成InputStream

标签:返回,文件,java,ByteArrayInputStream,FileInputStream,上传
From: https://www.cnblogs.com/july4/p/16820930.html

相关文章

  • JS文件动态上传进度条
    原网站<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport......
  • # vue 实现文件切上传
    vue实现文件切上传在实际开发项目过程中有时候需要上传比较大的文件,然后呢,上传的时候相对来说就会慢一些,so,后台可能会要求前端进行文件切片上传,很简单哈,就是把比如说1个......
  • 采集文章图片,上传到本地或者七牛云
    最近写了一个新需求,要求是采集回来的文章,图片替换成自己的url,可以选择保存本地或者七牛云七牛云原方案是下载到本地,但是获取不到,就作罢了,改用七牛云异步第三方资源抓取的......
  • SpringMCV(八):文件上传
    一、导入相关依赖<dependencies><!--文件上传--><dependency><groupId>commons-fileupload</groupId><artifactId>com......
  • 前端base64编码格式图片转换为file类型并上传
    将前端的base64编码格式图片转换为file文件,方便传输到后台进行处理。/*将base64转换为blob*/functionbase64ToBlob(dataurl){vararr=dataurl.split(',');var......
  • Oss图片上传的功能
    Oss的图片上传工具类获取oss的四个参数Stringendpoint=ConstantPropertiesUtils.END_POINT;StringaccessKeyId=ConstantPropertiesUtils.KEY_ID;......
  • WordPress彻底禁用上传媒体图片自动生成缩略图及多尺寸图片(亲测可用)
    WordPress默认上传图片的时候会自动生成缩略图及多尺寸的图片文件,大部分网站都用不到这些多余的图片,不仅仅占用空间,而且上传的时候还会消耗额外的性能。下面仅需两段函数......
  • vue 用 input 和 canvas 标签实现前端背景图片的移动 重绘 上传
    前言:    闲得无聊写的,嫌麻烦的直接出门左转搜索vuecropper.js模块直接用就行正文:  首先我们要知道input是自带file方法的,直接可以选这文件上传就行,但为了......
  • spring boot 上传文件大小超出限制
    查看源码如下: org.springframework.boot.autoconfigure.web.servlet.MultipartAutoConfiguration可以看见调用了MultipartProperties类的createMultiparConfig()方法......
  • 微信小程序基于vant和springboot实现附件上传和预览
    前言图片上传和预览在移动端应用非常广泛和频繁,vant组件库van-uploader组件已经帮我们实现了大部分功能,但是在系统中频繁使用还是有点麻烦,我们根据自身的业务系统重新封装了......