Stream Closed at java.io.FileInputStream.read0(Native Method)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Stream Closed at java.io.FileInputStream.read0(Native Method)相关的知识,希望对你有一定的参考价值。
每次执行到(while ((i = in.read()) != -1) )这一行就报错,报错信息:
||
java.io.IOException: Stream Closed
at java.io.FileInputStream.read0(Native Method)
at java.io.FileInputStream.read(Unknown Source)
private byte[] readStream(InputStream in) throws IOException
int i = 0;
||
方法如下:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
System.out.println("进入readStream方法!");
while ((i = in.read()) != -1)
bos.write(i);
bos.flush();
return bos.toByteArray();
求大神指点啊!!!!!!!!!
看错误的话可能是in这个变量的stream被关闭了,可以看下in的定义和操作是否有关闭后又读取。追问
for (InputStream is : streams)
Files.write(readStream(is), new File(saveFilePath));
DicomUtil.deCompress(new File(ftp + saveFilePath));
dicomPaths.add(saveFilePath);
在 //解压 那个地方调的 readStream() 帮忙看看
是否方便把所有代码发上来,片段的看没太看出来。如果代码比较多可以选择上传附件的形式
如果单单看上面代码的话,不排除是第一次for循环正确调用,然后流关闭,第二次调用时因为流被关闭报错,具体可以debug验证下
我的QQ 296763822 提问字数有限
本回答被提问者采纳JAXB:unmarshalexception - 带有链接异常:[java.io.IOException: Stream closed]
【中文标题】JAXB:unmarshalexception - 带有链接异常:[java.io.IOException: Stream closed]【英文标题】:JAXB : unmarshalexception - with linked exception: [java.io.IOException: Stream closed] 【发布时间】:2014-05-18 23:44:12 【问题描述】:我正在尝试使用 SAX 解析我的 xml,我想使用 JaxB 来构建我的地图我的元素名称及其值。我还想覆盖 startElement 和 endElemnt 但到目前为止我已经到达这里并且我正在解组例外。任何帮助表示赞赏!。
JAXBContext jaxbContext = JAXBContext.newInstance(my.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
UnmarshallerHandler unmarshallerHandler = jaxbUnmarshaller.getUnmarshallerHandler();
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
xr.setContentHandler(unmarshallerHandler);
InputStream inputStream = this.getClass().getResourceAsStream("my.xml");
InputSource inputSource = new InputSource(inputStream);
xr.parse(inputSource);
JAXBElement element = (JAXBElement) jaxbUnmarshaller.unmarshal(inputSource);
//or if I unmarahall to specific class object still i get same exception.
catch (JAXBException e)
// some exception occured
e.printStackTrace();
【问题讨论】:
【参考方案1】:在对 InputSource
使用 SAX 解析之后,您无法解组它。在UnmarshallerHandler
上调用getResult
获取对象。
【讨论】:
那么如何将 xml 文件解组为 java 类对象? @SriHari - 这是您要查找的信息吗:wiki.eclipse.org/EclipseLink/Examples/MOXy/GettingStarted 在上面的链接中,我得到的响应为空。请查看 pojo 类以获取 xml 响应?以上是关于Stream Closed at java.io.FileInputStream.read0(Native Method)的主要内容,如果未能解决你的问题,请参考以下文章
【JAVA】java.io.IOException: Stream closed问题!赶ddl!急!
JAXB:unmarshalexception - 带有链接异常:[java.io.IOException: Stream closed]
Java导出Excel,java.io.IOException: Stream is already closed
jsp报错java.io.IOException: Stream closed
我在用struts的时候,jsp页面出现了一个java.io.IOException: Stream closed的问题