2012-11-10 15 views
5

* .propertiesファイルに書きたい。私はこれをどうやって行うのですか?プロパティファイルへの書き込みが機能しない

properties = loadProperties("user.properties");//loads the properties file 
    properties.setProperty(username, password); 
     try { 
       properties.store(new FileOutputStream("user.properties"), null); 
       System.out.println("Wrote to propteries file!" + username + " " + password); 

私は例外はありませんが、出力はファイルに書き込まれません。ここで

も私のファイル構造である:私はあなたの答えに感謝

enter image description here

UPDATE

私は私の性質が付いたファイルをロード:

InputStream in = ClassLoader.getSystemResourceAsStream(filename); 

私の質問は、特定のパスからそれをロードする方法、ありますか?ここで

は私の「新しい」ファイル構造である:ここで

enter image description here

+1

私は自分のコードをテストしており、自分の作業ディレクトリに自分のプロパティファイルが作成されています。もちろん、あなたのファイル構造が間違っています。 \\ user.propertiesのようなパスを使用するとファイル名 – ElderMael

+0

を使用するのではなく、ファイルへのパスを使用する必要があると思います。「ファイルにアクセスする権限がありません」と表示されます。 – maximus

答えて

3

私のテストコードです:

@Test 
public void fileTest() throws FileNotFoundException, IOException { 

    File file = null; 

    Properties props = new Properties(); 

    props.setProperty("Hello", "World"); 

    URL url = Thread.currentThread().getContextClassLoader() 
      .getResource("exceptions/user.properties"); 

    try { 
     file = new File(url.toURI().getPath()); 

     assertTrue(file.exists()); 
    } catch (URISyntaxException e) { 

     e.printStackTrace(); 
    } 

    props.store(new FileOutputStream(file), "OMG, It werks!"); 

} 

それは私のターゲット/クラス/例外ディレクトリにファイルを作成し、書き換えたん(maven/eclipse proyectの中で)実際にはうまくいくと思いますが、もちろんJARファイルではテストされていません。ここで

ファイルですので、多分あなたは動作しませんでし何をしたいのかHow can i save a file to the class path

#OMG, It werks! 
#Sat Nov 10 08:32:44 CST 2012 
Hello=World 

また、この質問をご確認ください。

+0

/C:チェックして、それが として私を与えているためURL /Users/IBM_ADMIN/workspace/A_Migration_final/bin/common/props_1.dat が、正しいURLは C:\ユーザーはIBM_ADMIN \ワークスペース\ A_Migration_final \を\しますsrc \ common \ props.dat binファイルに書き込んでいますが、問い合わせ時に正しい値を与えると思いますか? –

関連する問題