我目前的情况是:我必须读取文件并将内容放入InputStream。之后,我需要将的内容InputStream放入一个字节数组,该数组需要(据我所知)的大小InputStream。有任何想法吗?
根据要求,我将显示从上传文件创建的输入流
InputStream uploadedStream = null; FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload(factory); java.util.List items = upload.parseRequest(request);
java.util.Iterator iter = items.iterator();
while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (!item.isFormField()) { uploadedStream = item.getInputStream(); //CHANGE uploadedStreambyte = item.get() } } 该请求是一个HttpServletRequest对象,类似于FileItemFactory和ServletFileUpload,来自Apache Commons FileUpload包。 问题来源于stack overflow
这是一个非常老的线程,但是当我搜索该问题时,它仍然是弹出的第一件事。所以我只想添加以下内容:
InputStream inputStream = conn.getInputStream(); int length = inputStream.available(); 为我工作。而且比这里的其他答案更简单。
警告:此解决方案无法提供有关流总大小的可靠结果。除了JavaDoc:
请注意,尽管{@code InputStream}的某些实现将返回*流中的字节总数,但许多实现则不会。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。