2014-04-06 3 views
4

현재 다음과 같은 XML 파일이 있습니다.org.xml.sax.SAXParseException : 조기 종료 파일

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 전화를하지만 나는 위에서 언급 한 오류가 발생 유지한다.

아무도 문제가 무엇인지 알 수 있습니까?

도움 주셔서 감사합니다.

+0

/COMP9321Assignment1/xml/musicDb.xml이 존재하지 않는, 또는 당신이 포함 된 생각 포함되지 않은 파일의 welformness에 대한

3.check. 당신은 이것이 절대 경로라는 것을 깨닫습니다. 따라서 문자 그대로 파일 시스템의 루트 아래에있는 COMP9321Assignment1 디렉토리를 찾습니다. –

+0

아 맞아. 이'.xml' 파일을 어디에 두어야합니까? 어떻게해야합니까? –

+0

원하는 위치에 넣고 코드에서 실제 파일의 경로를 사용하십시오. –

답변

2

일반적으로 "org.xml.sax.SAXParseException : 끝이 너무 파일 '로 인해 여러 가지 이유로

에 발생했을

당신의 XML은 모든 태그는 동일한 수준

2.check 경우에 제대로 닫혀 있었다 1.Check 모든 이름 공간 문제. 당신의 XML 문서

관련 문제