2011-09-27 12 views
7

È possibile creare un nuovo file di proprietà e aggiungere chiavi e valori in fase di esecuzione? Voglio aggiungere nuove chiavi al file delle proprietà a seconda dell'input dell'utente durante l'installazione della mia applicazione. Ho controllato la classe Java Properties ma sembra che possa impostare valori su chiavi esistenti ma non possa aggiungere nuove chiavi al file delle proprietà.Java - Proprietà: aggiungere nuove chiavi al file delle proprietà in fase di esecuzione?

+2

anche vedere [una classe migliore per aggiornare i file di proprietà] (http: // StackOverflow. it/questions/565932/a-better-class-to-update-property-files) –

risposta

13

È possibile aggiungere nuove proprietà semplicemente chiamando setProperty con una chiave che al momento non esiste. Che non potrà che farlo in memoria anche se - si dovrà chiamare store di nuovo in modo da riflettere le modifiche al file:

Properties prop = new Properties(); 
prop.load(...); // FileInputStream or whatever 

prop.setProperty("newKey", "newValue"); 
prop.store(...); // FileOutputStream or whatever 
+0

Non riflette nemmeno io immagazzino la proprietà modificata, qualche idea? –

+0

@PremanandK: Ho paura di non capire il tuo commento. Forse dovresti fare una nuova domanda con un [mcve]. –

+0

Ho salvato le modifiche alle mie proprietà come "prop.store (...);", ma non è in grado di riflettere. vale a dire. non vedo i miei cambiamenti nel mio file delle proprietà. Grazie per aver risposto @Jon Skeet –

Problemi correlati