2011-09-27 13 views
7

क्या कोई नया गुण फ़ाइल बनाना संभव है और रन समय में कुंजी और मान जोड़ना संभव है? मैं अपने आवेदन को स्थापित करते समय उपयोगकर्ता इनपुट के आधार पर गुण फ़ाइल में नई कुंजी जोड़ना चाहता हूं। मैंने जावा प्रॉपर्टी क्लास की जांच की लेकिन ऐसा लगता है कि यह मौजूदा कुंजी पर मान सेट कर सकता है लेकिन गुण फ़ाइल में नई कुंजी नहीं जोड़ सकता है।जावा - गुण: रन समय में गुण फ़ाइल में नई कुंजी जोड़ें?

+2

भी [संपत्ति फ़ाइलों का अद्यतन करने के लिए एक बेहतर वर्ग] (http देखते हैं। कॉम/प्रश्न/565 9 32/ए-बेहतर-श्रेणी-से-अपडेट-संपत्ति-फाइलें) –

उत्तर

13

आप वर्तमान में मौजूद नहीं होने वाली कुंजी के साथ setProperty पर कॉल करके नई संपत्तियां जोड़ सकते हैं। यही कारण है कि केवल हालांकि स्मृति में करना होगा - आप परिवर्तनों को वापस एक फाइल करने के लिए प्रतिबिंबित करने के लिए store फिर से फोन करना होगा: // stackoverflow:

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

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

यह प्रतिबिंबित नहीं करता है कि मैं संपत्ति को बदलता हूं, कोई विचार? –

+0

@ प्रेमानैंडके: मुझे डर है कि मैं आपकी टिप्पणी बिल्कुल समझ नहीं पा रहा हूं। शायद आपको एक [एमसीवी] के साथ एक नया सवाल पूछना चाहिए। –

+0

मैंने अपनी संपत्ति परिवर्तनों को "prop.store (...)" के रूप में सहेजा, "लेकिन यह प्रतिबिंबित नहीं करता है। अर्थात। मैं अपनी प्रॉपर्टी फाइल में अपने बदलाव नहीं देख रहा हूं। @ जोन स्कीट –

संबंधित मुद्दे