2016-04-13 16 views
-1

私は自分のコードに静的な配列リストを持っています。今私はプロパティファイルに移動する必要がありますので、変更や変更があった場合は、単にプロパティファイルの値を変更して、使用されている場所に反映されるようにしてください。今静的コードのようJavaのプロパティファイルからデータを取得

はこのようなものです:

ArrayList dataList = new ArrayList(); 
dataList.add("A"); 
dataList.add("B"); 
dataList.add("E"); 
dataList.add("G"); 
dataList.add("H"); 
dataList.add("P"); 
dataList.add("W"); 



ArrayList TypeList = new ArrayList(); 
TypeList.add(new Brand("A", "Test1")); 
TypeList.add(new Brand("B", "Test2")); 
TypeList.add(new Brand("E", "Test3")); 
TypeList.add(new Brand("G", "Test4")); 

私はこれを試してみましたが、これは動作していない:

Properties prop = new Properties(); 
prop.load(new FileInputStream("/displayCategerization.properties")); 

私はそれらの両方を動的にすると値があるべき欲しいですプロパティファイルから選択します。これどうやってするの?

+1

何が問題なのですか?問題を説明してください。例外はありますか?スタックトレースを送信します。 – STaefi

+0

これはあなたのための答えが含まれていますhttp://www.mkyong.com/java/java-properties-file-examples/ – gihan

+0

私はxmlを使用する必要がありますどのように私はキーとファイルの値を理解するために作成することができませんそのために私はそれにアクセスできます – Developer

答えて

0

あなたは、コードの下に試すことができます。

private static Properties props = null; 

public static void load(String configFilePath) { 
InputStream is = ClassLoader.getSystemResourceAsStream(configFilePath); 
props = new Properties(); 
props.load(is); 
is.close(); 
} 

public static String getValueByKey(String key) { 
     String propertyValue=null; 
     if(props.containsKey(key)) { 
      propertyValue = props.getProperty(key); 
     } 
     return propertyValue; 
    } 

は、あなたのプログラムの開始時に、この関数を呼び出します。あなたはこの方法で使用することができます更新

0

をプロパティファイルの場合には、プログラムを再起動する必要があります: -

Properties prop = new Properties(); 
    prop.load(new FileInputStream("Test.properties")); 
    String name = prop.getProperty("name"); 
    String city = prop.getProperty("city"); 

Test.properties

名= xyzの

市= AAA

関連する問題