Java SaxParseException提前结束文件
实际上这个问题是解析(xml)的。我收到错误消息“文件过早结束”第一次记录添加xmlfile。我找不到真正的解决方案。请帮助我Java SaxParseException提前结束文件,java,xml,io,Java,Xml,Io,实际上这个问题是解析(xml)的。我收到错误消息“文件过早结束”第一次记录添加xmlfile。我找不到真正的解决方案。请帮助我 File xml = new File("C:/members.xml"); DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory .newInstance(); DocumentBuilder docu
File xml = new File("C:/members.xml");
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory
.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory
.newDocumentBuilder();
documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document document = documentBuilder.parse(xml);
document.getDocumentElement().normalize();
NodeList nodeList = document.getElementsByTagName("member");
A.
A.
A.
0
a@a.com
A.
A.
您的示例有问题-以下代码运行时没有错误:
<?xml version="1.0" encoding="UTF-8"?>
<members>
<member id="0">
<name>a</name>
<surname>a</surname>
<fatherName>a</fatherName>
<age>0</age>
<email>a@a.com</email>
<username>a</username>
<password>a</password>
</member>
</members>
public void test()抛出ParserConfiguration异常、SAXException、IOException{
字符串xml=“\n”
+ ""
+ ""
+“a”
+“a”
+“a”
+ "0"
+ "a@a.com"
+“a”
+“a”
+ ""
+ "";
//File xml=新文件(“C:/members.xml”);
DocumentBuilderFactory DocumentBuilderFactory=DocumentBuilderFactory
.newInstance();
DocumentBuilder DocumentBuilder=documentBuilderFactory.newDocumentBuilder();
documentdocument=documentBuilder.parse(新的ByteArrayInputStream(xml.getBytes(“UTF-8”));
document.getDocumentElement().normalize();
NodeList NodeList=document.getElementsByTagName(“成员”);
}
您的示例有问题-以下代码运行时没有错误:
<?xml version="1.0" encoding="UTF-8"?>
<members>
<member id="0">
<name>a</name>
<surname>a</surname>
<fatherName>a</fatherName>
<age>0</age>
<email>a@a.com</email>
<username>a</username>
<password>a</password>
</member>
</members>
public void test()抛出ParserConfiguration异常、SAXException、IOException{
字符串xml=“\n”
+ ""
+ ""
+“a”
+“a”
+“a”
+ "0"
+ "a@a.com"
+“a”
+“a”
+ ""
+ "";
//File xml=新文件(“C:/members.xml”);
DocumentBuilderFactory DocumentBuilderFactory=DocumentBuilderFactory
.newInstance();
DocumentBuilder DocumentBuilder=documentBuilderFactory.newDocumentBuilder();
documentdocument=documentBuilder.parse(新的ByteArrayInputStream(xml.getBytes(“UTF-8”));
document.getDocumentElement().normalize();
NodeList NodeList=document.getElementsByTagName(“成员”);
}
尝试在webbrowse(firefox或chrome)中打开xml文件
添加查看他们是否报告任何错误
如果您有linux,您可以执行以下操作:
xmllint members.xml
此命令告知文件是否为有效的xml尝试在webbrowse(firefox或chrome)中打开xml文件 添加查看他们是否报告任何错误 如果您有linux,您可以执行以下操作:
xmllint members.xml
此命令告诉我们文件是否为有效的xml我们将显示一个最小但完整的
成员示例。xml
允许我们重现问题。您的第一个标记
给出了一些错误。我不确定它是什么,但当我用xml标记替换该标记时,它工作得很好。(虽然我的标记没有变化。尝试手动键入相同的标记。)您的文件('members.xml')是否真的像xml Prolog状态那样以UTF-8编码?如果xml prolog中定义的编码与实际文件编码不同,则可能会导致此类问题。我们将向我们展示一个最小但完整的成员示例。xml
允许我们重现此问题。您的第一个标记
给出了一些错误。我不确定它是什么,但当我用xml标记替换该标记时,它工作得很好。(虽然我的标记没有变化。尝试手动键入相同的标记。)您的文件('members.xml')是否真的像xml Prolog状态那样以UTF-8编码?如果xml prolog中定义的编码与实际文件编码不同,则可能会导致此类问题。