0

大家好,我正在尝试使用下面的代码使用 java 解析 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();}

我的文件布局是这样的

文件布局

我不断收到文件未找到异常。我也用过

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

我也尝试以流的形式阅读。

谢谢 :)

4

3 回答 3

1

尝试使用

Sytsem.out.println(System.getProperty("user.dir"));

这将打印出您程序的当前工作目录,然后您可以找出 appconfig.xml 文件的相对路径。

祝你好运

码头

于 2012-09-14T02:08:31.240 回答
1

这个看起来不错

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

除了它是main/config/appconfig.xml

于 2012-09-14T02:22:34.233 回答
0

您可以将绝对路径指定为:

Document config_doc=docBulider.parse(new File("$Absolute Path of the file"));
于 2014-04-04T21:46:04.763 回答