プロジェクトclasspathのプロパティファイル。

config.properties

#config file
json.filepath =/Users/mkyong/Documents/workspace/SnakeCrawler/data/....

===  1.非静的メソッド

通常、上記のプロパティファイルには `getClass()。getClassLoader()。getResourceAsStream`を介してアクセスできます。

package com.mkyong.crawler.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

public class FileHelper {

public String getFilePathToSave() {

Properties prop = new Properties();
String filePath = "";

try {

InputStream inputStream =
  getClass().getClassLoader().getResourceAsStream("config.properties");

prop.load(inputStream);
filePath = prop.getProperty("json.filepath");

    } catch (IOException e) {
    e.printStackTrace();
}

return filePath;

}

}

それを実行します。

FileHelper helper = new FileHelper();
String filePath = helper.getFilePathToSave();

===  2.静的メソッド

`getFilePathToSave()`メソッドが `static`メソッドに変換された場合、` getClass() `メソッドは失敗し、" __ Object__型から非静的メソッドgetClass()への静的参照を作成できません "というプロンプトが出されます。

代わりに、 `CurrentClass.class.getClassLoader()。getResourceAsStream`を使うべきです。

package com.mkyong.crawler.util;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

public class FileHelper {

public static String getFilePathToSave() {

Properties prop = new Properties();
String filePath = "";

try {

InputStream inputStream =
  FileHelper.class.getClassLoader().getResourceAsStream("config.properties");

prop.load(inputStream);
filePath = prop.getProperty("json.filepath");

} catch (IOException e) {
    e.printStackTrace();
}

return filePath;

}

}


String filePath = FileHelper.getFilePathToSave();

=== 参考文献

.  http://www.dzone.com/snippets/loading-property-file[Dzone  -  Loading A

クラスパスからのプロパティファイル]。 http://docs.oracle.com/javase/6/docs/api/java/lang/ClassLoader.html[Java

ClassLoader JavaDoc]

link://tag/java/[java]link://タグ/properties-file/[プロパティファイル]