有一种方法可以将 InputStream
转换为 String
,并将其编码为 base64,对吗?
在我的函数中,我得到了 InputStream
参数,并且需要将它插入到我的 Oracle 数据库表中的 BLOB 字段中。
有没有办法做到这一点?
(我的数据库对象包含用于保存图像的字符串字段,但我找不到任何方法将 InputStream
转换为 base 64 格式的字符串。)
原文由 foo 发布,翻译遵循 CC BY-SA 4.0 许可协议
有一种方法可以将 InputStream
转换为 String
,并将其编码为 base64,对吗?
在我的函数中,我得到了 InputStream
参数,并且需要将它插入到我的 Oracle 数据库表中的 BLOB 字段中。
有没有办法做到这一点?
(我的数据库对象包含用于保存图像的字符串字段,但我找不到任何方法将 InputStream
转换为 base 64 格式的字符串。)
原文由 foo 发布,翻译遵循 CC BY-SA 4.0 许可协议
有一个很好的方法是使用 IOUtils
将 InputStream 转换为 Byte Array
…
就像是
InputStream is;
byte[] bytes = IOUtils.toByteArray(is);
在这里,您可以使用 Base64
将 Byte Array
转换为 String
。
示例代码
String encoded = Base64.getEncoder().encodeToString(bytes);
现在您可以使用您的 String
。
原文由 Raj S. Rusia 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
您可以使用 Base64 API 尝试类似的操作。
用这个:
http://commons.apache.org/proper/commons-codec/archives/1.9/apidocs/org/apache/commons/codec/binary/Base64.html