2017-01-04 11 views
0

私はEclipseで作業しています。そこにはテキストファイルも含まれている "Test"という名前のJava Projectがあります。このプロジェクトのクラスは、これらのファイルの1つをBufferedReaderで読み取ることができます。これは、そのために私の現在のコードです:Javaプロジェクトのパスから独立してファイルを開く方法は?

BufferedReader in = new BufferedReader(new FileReader("C:/Users/workspace/Test/testFile.txt")); 

私のファイルは、プロジェクトに常にあるが、私は別のパスにプロジェクトを移動すると、ファイルパスがあまりにも、変わるので、私は新しいを使用してコードを調整する必要がパス。 実用的ではないので、私はそれを望んでいないので、私は何ができますか?プロジェクトの道はどうやって手に入れられますか?

+0

をなぜあなたは最初にそれがプロジェクトのために必要とされる場合に、ファイルを移動しなければならないのそれのようにファイルを追加するために良いですか?プロジェクトへのリソース、および現在のパスからのアクセス。 – Prabu

+1

単純な解決策は、 "./testFile.txt"のような相対パスを使用することです。これは、アプリケーションを起動したディレクトリからの相対パスであることに注意してください。 –

+0

ファイルを含むプロジェクトを移動します。 – LCP

答えて

0

このような何か試してみてください:

File currentDirFile = new File("."); 
String fileDir = currentDirFile.getAbsolutePath(); 
1

You can add file to resources folder and read like

ClassLoader classLoader = getClass().getClassLoader(); 
File file = new File(classLoader.getResource("file/test.xml").getFile()); 
+0

私は新しい "resources"フォルダを作成し、そこにファイルを配置しました。それから、私はあなたのコードを使用し、新しいBufferedReader(新しいFileReader(file))で行います。それは動作しません! – LCP

+1

また、リソースフォルダをビルドパスに追加する必要があります。http://stackoverflow.com/questions/27934796/how-do-i-add-a-resources-folder-to-my-java-project-in -eclipse –

関連する問題