网络图片转InputStream,网络图片转MultipartFile,InputStream转MultipartFile
2024-10-09 22:00:57
头疼,不废话直接上代码
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
1,网络图片转InputStream
InputStream inputStream = getImageStream("http://192.168.111.111:2333/pic?xxxxxxxx"); /**
* 获取网络图片流
*
* @param url
* @return
*/
public static InputStream getImageStream(String url) {
try {
HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
connection.setReadTimeout(5000);
connection.setConnectTimeout(5000);
connection.setRequestMethod("GET");
if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
InputStream inputStream = connection.getInputStream();
return inputStream;
}
} catch (IOException e) {
System.out.println("获取网络图片出现异常,图片路径为:" + url);
e.printStackTrace();
}
return null;
}
2,InputStream转MultipartFile
1)MockMultipartFile
MultipartFile multipartFile = new MockMultipartFile("xxxx.jpg","xxxx.jpg", MediaType.MULTIPART_FORM_DATA_VALUE, inputStream);
2) CommonsMultipartFile
public void testOSSServiceImport(){
File file = new File("xxxx.jpg");
DiskFileItem fileItem = (DiskFileItem) new DiskFileItemFactory().createItem("file",
MediaType.ALL_VALUE, true, file.getName()); try (InputStream input = new FileInputStream(file); OutputStream os = fileItem.getOutputStream()) {
IOUtils.copy(input, os);
} catch (Exception e) {
throw new IllegalArgumentException("Invalid file: " + e, e);
} MultipartFile multi = new CommonsMultipartFile(fileItem); }
最新文章
- Atitit 动态调用webservice与客户端代理方式调用
- ImageView的ScaleType属性
- 在CentOS 6.4 x86_32中使用Rhythmbox听MP3
- winfrom自定义控件
- 转载:Spring AOP (上)
- 在MVC3或asp.net中修改KindEditor实现上传图片时添加水印
- ES5 vs ES6
- 【BZOJ 1597】 [Usaco2008 Mar]土地购买 (斜率优化)
- Java---练习:文件切割与合并(1)
- windows下使用openssl的一种方法
- word加载项打包发布注意事项总结
- 转载:使用Math.floor和Math.random取随机整数
- Java并发框架——AQS阻塞队列管理(一)——自旋锁
- Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Clien
- CSS基础【2】:CSS常见属性
- JAVA-大白话探索JVM-类加载器(一)
- python 全栈开发,Day73(django多表添加,基于对象的跨表查询)
- linux 虚拟机 磁盘空间压缩
- ubuntu下将程序挂后台命令
- Yarn资源调度过程详细
热门文章
- flink sql任务出现java.lang.OutOfMemoryError: Metaspace
- Blockchain for Edge of Things: Applications, Opportunities, and Challenges
- Python自动发邮件(QQ为例)
- 莫凡Python 3
- 二、chaosblade实现k8s集群操作
- 2023-03-02 记录一下关于chatGPT使用方法
- gopher必读文章
- (0319) uvm 库的安装编译:
- 调度器42—进程exit退出流程
- 7.mysql索引失效