我正在使用 stax 解析一个 xml 文件并将提取的数据写入数据库。它适用于小文件,但是当我解析一个大文件时,它会抛出这个异常。看xml文件,是按照给定的行和列来的。谁能告诉我,为什么会这样?
com.ctc.wstx.exc.WstxEOFException: Unexpected EOF; was expecting a close tag for element <attribute>
at [row,col {unknown-source}]: [787,1401]
at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:686)
at com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2730)
at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019)
at com.ctc.wstx.evt.WstxEventReader.nextEvent(WstxEventReader.java:196)
sun.reflect.GeneratedMethodAccessor3625.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.aop.joinpoint.MethodInvocation.invokeTarget(MethodInvocation.java:122)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
最佳答案
我遇到了同样的问题。 wstx-asl.jar 和 stax2-api-3.1.1.jar 中的文件结构类似。因此,它不是从 stax2-api-3.1.1.jar 中选取,而是错误地从 wstx-asl.jar 中选取,因此发生了异常。从类路径中删除 wstx-asl.jar 解决了这个问题。
关于java - 意外的 EOF;期待元素 <attribute> 的关闭标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11690402/