2017-05-12 11 views
0

現在、scannerオブジェクトを含むパッケージにあるJavaのtxtファイルを読み込んでいます。私は、拙速な方法使用するファイルの場所受け取るためにEclipse(Java)のパッケージへのパスを取得する方法

File currentDirectory = new File(new File(".").getAbsolutePath()); 
String location = currentDirectory.getAbsolutePath().replace(".", "")+"\\corefiles\\src\\filereadingexample\\"; 
  • はそうすることのより良い方法はありますか?

私はコードを改善したいと思います。

挨拶 J

+0

はいに役立ちます。 (クラスパスを使用する)リソースを参照してください –

+2

[Javaのクラスパスからテキストファイルを実際に読み取る方法]の可能な複製(http://stackoverflow.com/questions/1464291/how-to-really-read-text-file- from-classpath-in-java) – Kapep

答えて

0

テキストファイルがパッケージ内にあるので、パッケージ構造を使用し、URLパスとして

URL resource = getClass().getResource("/path/to/text/file.txt"); 

を使用してください。たとえば、あなたのファイル(myfile.txtの)を想定

com.myproject.files 

パッケージ内に、あなたのパスが

"/com/myproject/files/myfile.txt" 

あるべきである(先頭のスラッシュに注意する必要があります。それは必要です)あなたが作成することができます今すぐ

URLを使用するファイル

new File(resource.getFile()); 

"resource.getFile()"は、ファイルへの絶対パスも返します。

希望これは

0

現在diretoryパスを取得します

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

String ohterPackages = currentDirPath + File.separator + "filereadingexample\\fileName.txt"; 

ユーザーのホームディレクトリ

String homePath = System.getProperty("user.home");