org.xml.sax.SAXParseException:过早的结束文件

时间:2014-04-06 07:51:10

标签: java xml domparser

我目前有以下XML文件。

http://www.cse.unsw.edu.au/~cs9321/14s1/assignments/musicDb.xml

我的XMLParser.java课程。

package edu.unsw.comp9321.assignment1;

import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;

public class XMLParser {


public void search () {

    try{
        File fXmlFile = new File("/COMP9321Assignment1/xml/musicDb.xml");           
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(fXmlFile);

        System.out.println("Root element :" + doc.getDocumentElement().getNodeName());

    } catch (Exception e) {
        e.printStackTrace();
    }

}

}

我在另一个类中创建一个对象并调用search,但我一直收到上述错误。

有人知道问题可能是什么吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

正常情况下“org.xml.sax.SAXParseException:过早结束文件”由于多种原因而发生

1.检查你的xml所有标签是否在同一级别正确关闭

2.检查是否有任何名称空间问题。

3.检查xml文档的完整性