2013-04-22 153 views
1

我需要知道我應該在哪裏放置xml文件到Java項目中。我需要訪問放置的XML文件並解析它。我曾嘗試使用資源文件夾,但它沒有爲我工作。有人可以建議我有關如何訪問放置在JAVA項目中的xml文件的好主意。我正在使用Eclipse IDE。從JAVA項目中讀取xml文件

回答

1

你可以使用Maven的結構:項目/ src目錄/主/資源

我想這是一個數據的XML文件。如果它是一個配置文件,更好的方法是通過類路徑訪問它。 這是放置資源的常見位置,但您可以選擇自己的目錄。如果你有打開文件的問題,這是你的路徑不正確。先嚐試用絕對路徑打開它。類似於d:/workspace/Project/src/main/resources/file.xml。它會起作用。

1

資源文件夾是放置您的xml文件的正確文件夾。如果它沒有在該文件夾中找到該文件,那麼它可能不在classpath上。所以,把這個文件夾添加到你的項目的類路徑中。

轉到項目 - >屬性 - > Java構建路徑 - >源 - >添加文件夾

然後將資源文件夾添加到類路徑。這就是所有...你是好去..

+0

我應該在哪裏創建資源文件夾。它是否位於java源文件位於或不在src下的包中。 – user1427961 2013-04-22 07:22:02

+0

是你的項目maven項目還是簡單的webapp或java項目? – 2013-04-22 07:23:58

+0

Java項目。但你對maven項目意味着什麼。 – user1427961 2013-04-22 07:25:21

1

使用如下類 -

this.getClass().getClassLoader().getResourceAsStream("path of file"); 

注:本項目的XML文件結構

+pro 
    +src 
    +resource 
    -test.xml 

例子:

public class ReadFile { 
     public void testReadFile() { 
      InputStream in = this.getClass().getClassLoader() 
      .getResourceAsStream("/Resources/tset.xml"); 
//praparing DOM 
     DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory 
       .newInstance(); 
     DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder(); 
// by sending input stream as input to DOM 
     Document doc = docBuilder.parse(in); 
     } 
     public static void main(String[] args) { 
      ReadFile file = new ReadFile(); 
      file.testReadFile(); 
     } 
    } 
+0

除了一些錯別字你的答案幫助了我。 +1 – DerMike 2014-01-03 14:51:26

0

您需要確保Eclipse包含/ resources文件夾到應用程序類路徑中。

Run Configurations打開您的啓動器,轉到Classpath選項卡,如果它不存在 - 添加它。

該文件可以用this.getClass().getClassLoader().getResource*方法讀取。