在 Java 中对图片处理后如何再转回输入流比较好

2020-11-13 18:56:40 +08:00
 gibber

接收前端上传的图片后用 ImageIO 处理后发现只能写到文件或输出流,但我是需要通过输入流上传到 ftp 服务器上去,请问有什么解决方案吗

1627 次点击
所在节点    Java
7 条回复
chendy
2020-11-13 19:01:07 +08:00
输出流写 ftp 服务器
输入流是读,输出流是写
gibber
2020-11-13 19:30:52 +08:00
@chendy 我的意思上传 ftp 的方法接收的参数是个输入流
FTPClient.storeFile(String, inputStream)
echohw
2020-11-13 20:18:27 +08:00
ByteArrayOutputStream,ByteArrayInputStream
chocotan
2020-11-13 20:18:43 +08:00
先转 byte array 。再用一个 ByteArrayInputStream 接收
chocotan
2020-11-13 20:22:17 +08:00
// commons-io 包里的 IOUtils
new ByteArrayInputStream(IOUtils.toByteArray(is))
EminemW
2020-11-14 11:55:23 +08:00
一般都是转成字节数组再操作
gibber
2020-11-16 09:11:41 +08:00
@chocotan 我现在也是这样用字节数组处理,就是担心这样转会导致内存溢出,因为图片都挺大

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/724980

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX