美文网首页
inputstream 流复用

inputstream 流复用

作者: 不二不二熊 | 来源:发表于2022-07-02 11:43 被阅读0次
    public class InputStreamCache {
        /**
         * 将InputStream中的字节保存到ByteArrayOutputStream中。
         */
        private ByteArrayOutputStream byteArrayOutputStream = null;
    
        public InputStreamCache(InputStream inputStream) {
            if (Objects.isNull(inputStream)) {
                return;
            }
            byteArrayOutputStream = new ByteArrayOutputStream();
            byte[] buffer = new byte[1024];
            int len;
            try {
                while ((len = inputStream.read(buffer)) > -1) {
                    byteArrayOutputStream.write(buffer, 0, len);
                }
                byteArrayOutputStream.flush();
            } catch (IOException e) {
                log.error(e.getMessage(), e);
            }
        }
    
        public InputStream getInputStream() {
            if (Objects.isNull(byteArrayOutputStream)) {
                return null;
            }
            return new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
        }
    }
    

    相关文章

      网友评论

          本文标题:inputstream 流复用

          本文链接:https://www.haomeiwen.com/subject/roxkbrtx.html