我们可以将一个字节数组转换成Java中的InputStream吗?

我们可以将一个字节数组转换成Java中的InputStream吗? 我一直在网上找,但找不到它。

我有一个InputStream作为参数的方法。

我有的InputStream cph是base64编码,所以我不得不使用解码

 BASE64Decoder decoder = new BASE64Decoder(); byte[] decodedBytes = decoder.decodeBuffer(cph); 

现在如何再将decodedBytes转换为InputStream

使用ByteArrayInputStream

 InputStream is = new ByteArrayInputStream(decodedBytes); 

如果你使用Robert Harder的Base64工具 ,那么你可以这样做:

 InputStream is = new Base64.InputStream(cph); 

或者用太阳的JRE,你可以这样做:

 InputStream is = new com.sun.xml.internal.messaging.saaj.packaging.mime.util.BASE64DecoderStream(cph) 

但是,不要依赖那个类继续成为JRE的一部分,甚至不要继续做今天的事情。 太阳说不要使用它。

还有其他关于Base64解码的Stack Overflow问题,比如这个。

Interesting Posts