2012-09-14 192 views
0

大家好我試圖用java使用下面的代碼來解析XML文件..解析XML文件

try{ 

     DocumentBuilderFactory docFactory=DocumentBuilderFactory.newInstance(); 
     DocumentBuilder docBulider=docFactory.newDocumentBuilder(); 
     Document config_doc=docBulider.parse("config/appconfig.xml"); 
     config_doc.getDocumentElement().normalize(); 
     Node n =config_doc.getDocumentElement(); 
     NodeList list= n.getChildNodes(); 
     for(int i=0;i<list.getLength();i++){ 
      System.out.print(list.item(i)); 
     if(list.item(i).getNodeName().equalsIgnoreCase("version-name")){ 
     name=list.item(i).getNodeValue(); 
     } 

     } 

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

我的文件格式是這樣的

File Layout

我不斷收到文件未找到異常。我還使用

的getClass()。getResouce( 「配置/ appconfig.xml」)。toExternalForm()

和我試圖太讀作流。

謝謝:)

+0

回覆:找不到文件。檔案在哪裏?在你的類路徑中?或者相對於當前的工作目錄? – Thilo

+0

@Thilo:編輯.. –

回答

1

這一次似乎好

getClass().getResouce("config/appconfig.xml").toExternalForm()

除了它是main/config/appconfig.xml

+2

或者更確切地說/main/config/appconfig.xml – Thilo

1

嘗試使用

Sytsem.out.println(System.getProperty( 「user.dir來」));

這將打印出你的程序當前的工作目錄,然後你可以找出你的appconfig.xml文件的相對路徑。

好運

碼頭

+0

我認爲問題是因爲文件正在archieved裏面jar文件 –

0

你可以給的絕對路徑爲:

Document config_doc=docBulider.parse(new File("$Absolute Path of the file"));