2011-12-13 9 views
2

目前,我只能讓我的應用程序訪問XML數據庫,當jar文件和XML文件在同一個目錄中時,我希望只有一個包含XML文件的jar文件。我怎樣才能做到這一點?如何將XML數據庫包含到jar文件中並對其進行訪問?

private String getXmlPath() { 
    String url = ""; 
    try { 
     String cp = "Data\\QuestionList.xml"; 
     File f = new File(ClassLoader.getSystemResource("\\").toURI().getPath()); 
     url += f.getPath() + "\\" + cp; 
    } catch (URISyntaxException ex) { 
     url="QuestionList.xml"; 
    } 
    System.out.println(url); 
    return url; 
} 

public void classifyQuestionnaire(String path) 
     throws FileNotFoundException, XMLStreamException, JAXBException { 
    // Parse the data, filtering out the start elements 
    XMLInputFactory xmlif = XMLInputFactory.newInstance(); 
    FileReader fr = null; 
    if (path == null) { 
     fr = new FileReader(getXmlPath()); 
    } else { 
     fr = new FileReader(path); 
    } 
    XMLEventReader xmler = xmlif.createXMLEventReader(fr); 
    EventFilter filter = new EventFilter() { 

     @Override 
     public boolean accept(XMLEvent event) { 
      return event.isStartElement(); 
     } 
    }; 

回答

1

您可以將xml文件包含到jar中。這些非類文件通常稱爲「資源」。這取決於你如何創建jar,但通常很簡單。請參閱Java: Load a resource contained in a jar閱讀資源。

相關問題