Java url转MultipartFile inputStream转File file转multipartFile

2023-11-11

Java url转MultipartFile inputStream转File file转multipartFile

/**
	 * url转MultipartFile
	 * @param url
	 * @return
	 * @throws Exception
	 */
	public static MultipartFile urlToMultipartFile(String url) throws Exception {
		File file = null;
		MultipartFile multipartFile = null;
		try {
			HttpURLConnection httpUrl = (HttpURLConnection) new URL(url).openConnection();
			httpUrl.connect();
			file = inputStreamToFile(httpUrl.getInputStream(),"template.png");

			multipartFile = fileToMultipartFile(file);
			httpUrl.disconnect();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return multipartFile;
	}

	/**
	 * inputStream 转 File
	 * @param ins
	 * @param name
	 * @return
	 * @throws Exception
	 */
	public static File inputStreamToFile(InputStream ins, String name) throws Exception{
		File file = new File(System.getProperty("java.io.tmpdir") + File.separator + name);
		OutputStream os = new FileOutputStream(file);
		int bytesRead;
		int len = 8192;
		byte[] buffer = new byte[len];
		while ((bytesRead = ins.read(buffer, 0, len)) != -1) {
			os.write(buffer, 0, bytesRead);
		}
		os.close();
		ins.close();
		return file;
	}

	/**
	 * file转multipartFile
	 * @param file
	 * @return
	 */
	public static MultipartFile fileToMultipartFile(File file) {
		FileItemFactory factory = new DiskFileItemFactory(16, null);
		FileItem item=factory.createItem(file.getName(),"text/plain",true,file.getName());
		int bytesRead = 0;
		byte[] buffer = new byte[8192];
		try {
			FileInputStream fis = new FileInputStream(file);
			OutputStream os = item.getOutputStream();
			while ((bytesRead = fis.read(buffer, 0, 8192)) != -1) {
				os.write(buffer, 0, bytesRead);
			}
			os.close();
			fis.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		return new CommonsMultipartFile(item);
	}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java url转MultipartFile inputStream转File file转multipartFile 的相关文章

  • Java 中等效的并行扩展

    我在 Net 开发中使用并行扩展有一些经验 但我正在考虑在 Java 中做一些工作 这些工作将受益于易于使用的并行库 JVM 是否提供任何与并行扩展类似的工具 您应该熟悉java util concurrent http java sun
  • Java new Date() 打印

    刚刚学习 Java 我知道这可能听起来很愚蠢 但我不得不问 System out print new Date 我知道参数中的任何内容都会转换为字符串 最终值是 new Date 返回对 Date 对象的引用 那么它是如何打印这个的呢 Mo
  • 如何默认将 Maven 插件附加到阶段?

    我有一个 Maven 插件应该在编译阶段运行 所以在项目中consumes我的插件 我必须做这样的事情
  • 在 java 类和 android 活动之间传输时音频不清晰

    我有一个android活动 它连接到一个java类并以套接字的形式向它发送数据包 该类接收声音数据包并将它们扔到 PC 扬声器 该代码运行良好 但在 PC 扬声器中播放声音时会出现持续的抖动 中断 安卓活动 public class Sen
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • Liferay ClassNotFoundException:DLFileEntryImpl

    在我的 6 1 0 Portal 实例上 带有使用 ServiceBuilder 和 DL Api 的 6 1 0 SDK Portlet 这一行 DynamicQuery query DynamicQueryFactoryUtil for
  • 我可以使用 HSQLDB 进行 junit 测试克隆 mySQL 数据库吗

    我正在开发一个 spring webflow 项目 我想我可以使用 HSQLDB 而不是 mysql 进行 junit 测试吗 如何将我的 mysql 数据库克隆到 HSQLDB 如果您使用 spring 3 1 或更高版本 您可以使用 s
  • 禁止的软件包名称:java

    我尝试从数据库名称为 jaane 用户名 Hello 和密码 hello 获取数据 错误 java lang SecurityException Prohibited package name java at java lang Class
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • 为什么HashMap不能保证map的顺序随着时间的推移保持不变

    我在这里阅读有关 Hashmap 和 Hashtable 之间的区别 http javarevisited blogspot sg 2010 10 difference Between hashmap and html http javar
  • getResourceAsStream() 可以找到 jar 文件之外的文件吗?

    我正在开发一个应用程序 该应用程序使用一个加载配置文件的库 InputStream in getClass getResourceAsStream resource 然后我的应用程序打包在一个 jar文件 如果resource是在里面 ja
  • 加密 JBoss 配置中的敏感信息

    JBoss 中的标准数据源配置要求数据库用户的用户名和密码位于 xxx ds xml 文件中 如果我将数据源定义为 c3p0 mbean 我会遇到同样的问题 是否有标准方法来加密用户和密码 保存密钥的好地方是什么 这当然也与 tomcat
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • 在mockito中使用when进行模拟ContextLoader.getCurrentWebApplicationContext()调用。我该怎么做?

    我试图在使用 mockito 时模拟 ContextLoader getCurrentWebApplicationContext 调用 但它无法模拟 here is my source code Mock org springframewo
  • 如何从泛型类调用静态方法?

    我有一个包含静态创建方法的类 public class TestClass public static
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo

随机推荐

  • Nginx配置白名单访问

    一 背景 在项目运行的时候 需要设置特定的访问权限 以拒绝其他可能存在的恶意访问 二 配置 2 1 关键字 允许访问关键字 allow 屏蔽访问关键字 deny 2 2 作用域 作用域如下 http 所有网站屏蔽IP server 单独网站
  • 字符串汇总

    一 字符串表达式计算 如 1 2 2 3 package TcpIO import java util Deque import java util LinkedList public class StringCalculate stati
  • 解决问题——无法连接到更新服务器。我们将稍后再试,你也可以立即进行检查。如果问题仍然存在,请确保你已连接到Internet

    安装AE跳出安装失败 错误 另一个安装程序当前正在运行 如需安装此产品 您必须将其关闭 请将其关闭 或者等待其他安装jieshu 错误代码 81 2 针对以上问题决定对Win10进行系统的更新 打开设置 更新与安全 进行更新 但是我的电脑更
  • 网段192.168.1.0/24是什么意思?

    192 168 1 0 24表示网段是192 168 1 0 子网掩码是24位 子网掩码为 255 255 255 0 用二进制表示为 11111111 11111111 11111111 00000000 这里为什么是24呢 就是因为子网
  • 公司计算机程序员英语作文,IT行业程序员英文简历模板范文

    英文简历的目的是帮助IT行业求职者获得面试机会 那你知道英文简历该怎么写吗 下面是学习啦小编为大家带来的程序员英文简历范文 相信对你会有帮助的 程序员英文简历范文 一 27 Hawkins Road Clarksboro New Jerse
  • Matlab 显示追踪点云 PLY格式

    用的matlab 可以用来显示文件夹下的所有ply点云 path strcat E WorkDatas argoverse tracking train1 dcdcd8b3 0ba1 3218 b2ea 7bb965aad3f0 lidar
  • 浅谈定时器及定时器在Vue项目中的使用

    对于一位前端工程师来说 说到定时器 想必都不陌生 无论是刚开始码农生活的新人还是多年工作经验的大牛 setTimeout setInterval 在项目中不可避免的都会使用 作为一个前端小菜鸟 在项目中的监控大屏的列表中需要用到setInt
  • 基于STM32CubeMX+FreeRTOS的Proteus仿真LCD1602

    LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块 它是由字符型液晶显示屏 LCD 控制驱动主电路HD44780及其扩展驱动电路HD44100 以及少量电阻 电容元件和结构件等装配在PCB板上而组成 一 LCD1602技术参数 显示
  • docker 无法访问web

    出于安全考虑 Linux系统默认是禁止数据包转发的 所谓转发即当主机拥有多于一块的网卡时 其中一块收到数据包 根据数据包的目的ip地址将数据包发往本机另一块网卡 该网卡根据路由表继续发送数据包 这通常是路由器所要实现的功能 要让Linux系
  • PaddleDetection使用教程

    详细的使用教程可以参考官方文档 一 安装说明 在安装PaddleDetection之前要先安装依赖项PaddlePaddle 你可以将其看作一个内核 有了它才可以安装PaddleDetection 首先 我们可以新建一个虚拟环境 命名为pa
  • python每日一题(leetcode/atcoder/nowcoder)

    背景 用leetcode每日一题 正好练一练python的一些写法吧 2021年2月28日 896 单调队列 判断数组是单增的或者是单减的 学习到一个sorted的用法 还有倒序的切片 class Solution def isMonoto
  • 微信小程序java+ssm+uniapp个人理财消费收支系统

    利用Java语言 SSM框架和mysql数据库等知识点 结合相关设计模式 以及软件工程的相关知识 设计一个ssm微信小程序的个人消费系统 来进行记录用户的信息 以及小程序信息的增删改查的功能 根据实现需求 小程序需完成这些基本功能 1 系统
  • C++ 多态(一) : 多态的构成条件、final、override、协变、析构函数的重写、抽象类

    文章目录 1 多态的定义和实现 多态的浅层理解 多态的构成条件 2 虚函数 虚函数的重写规则 虚函数重写条件的两个例外 1 协变 返回值不同 2 析构函数的重写 函数名不同 3 C 11 override 和 final override
  • JQ开发中遇到的问题(一)

    目录 目录 1 收藏与取消收藏切换 2 使用layui插件下拉选择渲染问题 1 收藏与取消收藏切换 说明 从接口中获取收藏状态 单击切换状态 如下图所示 开始状态 点击后状态 代码实现 1 全局定义一个变量 记录状态 var collect
  • wps 云文档的服务器地址,在WPS云文档保存、管理文件

    云文档上传和获取服务端调用 目录 1 获取APP剩余空间 获取APP剩余空间 接口说明 获取APP剩余空间 请求说明 参数说明参数参数类型是否必须说明access tokenstringrequiredaccess token appids
  • 相关系数和p值的含义

    相关系数就是两个变量之间的相关程度 1 lt 0负相关 r gt 0正相关 r2越接近1表示越相关 P值即概率 反映某一事件发生的可能性大小 统计学根据显著性检验方法所得到的P 值 一般以P lt 0 05 为显著 P lt 0 01 为非
  • [Unity] Unity 3D 中的旋转

    Unity 3D 中的旋转 一 Unity 3D 中 Rotation 在Unity中 旋转通常可以用一个三维向量 x y z 表示 实际上这是欧拉角 三个分量分别是绕x轴 y轴和z轴的旋转角度 要对一个GameObject进行旋转 可以直
  • HTCvive官方开发插件介绍

    相信各位小伙伴们在使用SteamVR Unity Plugin的过程中应该都遇到过这样的问题 获取设备很麻烦 设备在重启后indexID会改变从而导致设置好的左右手设备出现交错 无法与UGUI的事件系统连接导致无法使用UGUI等等很多问题
  • 关于windows本机开放端口后,同一个网络下的其他电脑telnet不通的解决办法

    前提 电脑A与电脑B均在同一个wifi下 本地电脑A 启动了一个kong网关 不管是什么应用 只要开启了一个监听端口就行 并且将docker里面的8000端口映射到本机的8000端口 此时在电脑A上的命令行运行 telnet 10 xxx
  • Java url转MultipartFile inputStream转File file转multipartFile

    Java url转MultipartFile inputStream转File file转multipartFile url转MultipartFile param url return throws Exception public st