2016-08-31 23 views
3

EclipseでSampleProjという名前のプロジェクトがあります。Javaを使用してeclipseから現在のプロジェクトパスを取得する方法

プロジェクト構造は以下のように述べている:

SampleProj 
    | 
    -- META-INF 
      | 
      -- dbdetails.properties 

現在、私はこのようなファイルを読んでいる:

FileReader reader = new FileReader("C://Workspace//SampleProj/META-INF//dbdetails.properties"); 

は、しかし、このパスは私のシステムRITに対してローカルです。だから、私はこの道を一般的にしたいと思っています。

だから、私はこのようなパスを維持しようとしている:

FileReader reader = new FileReader("SampleProj/META-INF//dbdetails.properties"); 

しかし、私は、ファイルが見つからない例外を取得しています。

このファイルをProjectからどのように読み取ることができますか。誰もがあなたが使用して取得することができます...これに関する

+0

アプリを実行するときに作業ディレクトリを設定できます。 'C:// Workspace'に設定した場合、コードは機能します。 – talex

+0

@ ma3stro 'META-INF'がプロジェクトにリソースとして含まれている場合にのみ機能します。 – talex

答えて

1
  • ゴー/ 実行コンフィギュレーション...
  • を選択してください。設定あなたは、
  • がタブに引数ワーキングディレクトリセクションで
  • を選択して使用]をクリックしますその他
  • 入れC:\テキストフィールド内のワークスペース
  • クリック適用

次に相対パスがSystem property user.dirに対応するユーザー作業ディレクトリからの相対パスであるため、はパスとして動作する必要があります。

+0

何とか助けてくれましたか? –

+0

ええ、それは私を助けた。おかげで多くのニコラス – dev777

+0

@ dev777良いニュース –

2

私を助けてくださいすることができます

String workingDir = System.getProperty("user.dir"); 

その後、あなたはこのようにそれを行うことができます。実行

FileReader reader = new FileReader(workingDir +"//SampleProj//META-INF//dbdetails.properties"); 
0
開発は、あなたは以下のようにそれを行うことができます懸念しているFASとして

しかし、あなたの使って春のWeb MVCプロジェクトの使用している場合は、こののSampleCodeその優れたが、クラスパスに

String currentDirectory=System.getProperty("user.dir"); 


FileReader reader = new FileReader(currentDirectory+"/SampleProj/META-INF//dbdetails.properties"); 
0

をファイルを追加するプロジェクトを展開した後:

String path=session.getServletContext().getRealPath("/ui_resources/images/logo.png"); 
関連する問題