私のプロジェクトには次の構造があります。Javaのファイルパスまたはファイルの場所 - 新しいファイル()
Eclipseで:a.java
で
myPorjectName
src
com.example.myproject
a.java
com.example.myproject.data
b.xml
、私はb.xml
ファイルを読むことをお勧めします。どうやってやるの?具体的には、a.java
に、私は次のコードを使用:
DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
Document doc = docBuilder.parse (new File("data/b.xml"));
このコードはb.xml
を見つけることができません。ただし、パスをsrc/com/example/myproject/data/b.xml
に変更した場合は動作します。現在の場所はプロジェクトファイルのルートにあるようです。同じフォルダ内にあるb.xml
場合とa.java
は、しかし、私は、我々は直接new File("b.xml")
を使用することができ、他の人の例を参照してください。しかし、と同じフォルダにb.xml
を置いてみましたが、サブフォルダを入れているのではなく、まだが動作しません。。これがうまくいくなら、私の場合はnew File("data/b.xml")
を使用することができますか?なぜこれが動作していないのか分かりません。
最も可能性の高い、より 'のgetClass()getResourceAsInputStream( "/ COM /例/ MyProjectと/データ/ b.xml")のようになるだろう;' – MadProgrammer
それはあなたの**デフォルトのディレクトリので、働いていない(つまりjavaが実行されています)からです。**は 'myPorjectName'です。これは' myproject'にありません。 – xagyg
xagygとMadProgrammerのコメントは私が間違っている理由を理解させてくれます。君たちありがとう。以下の答えは私に何かもっと学ばせる。 – Joey