2013-03-06 11 views
6

संपत्ति फ़ाइल से कुंजी और मूल्य कैसे हटाएं? मेरी संपत्ति फ़ाइल इन सामग्रियां हैं:संपत्ति फ़ाइल से प्रविष्टि हटाएं

key1=value1 
key2=value2 

मैं प्रवेश key2=value2 नष्ट करने के लिए नीचे दिए गए कोड का इस्तेमाल किया। उसके बाद, अब फ़ाइल इन मूल्यों है:

FileOutputStream out1 = new FileOutputStream(file, true); 
prop.remove(key); 
prop.store(out1,null); 

क्या गलती कर रहा हूँ है:

key1=value1 
key2=value2 
Wed Mar 06 12:36:32 IST 2013 
key1=value1 

जावा कोड एक प्रविष्टि हटाने के लिए। इसे लिखने से पहले फ़ाइल की पूरी सामग्री को कैसे साफ़ करें।

+0

प्रयास करें 'नई FileOutputStream (फ़ाइल, * झूठी *)' –

+0

चेक http://stackoverflow.com/questions/4225794/हटाएं-कुंजी-और-मूल्य-से-संपत्ति-फ़ाइल – Abi

+0

फ़ाइल को संलग्न मोड में न खोलें। –

उत्तर

7

1) संपत्ति फ़ाइल की सामग्री के रूप में देखना चाहिए इस प्रकार है:

key1=value1 
key2=value2 

2) आप संलग्न मोड में फ़ाइल खोल रहे हैं, यह गलत है। यह होना चाहिए:

new FileOutputStream(file); 

3) बंद out1 स्पष्ट रूप से, Properties.store एपीआई:

उत्पादन धारा इस विधि रिटर्न के बाद खुला रहता है।

आप न Properties.store का उपयोग करना चाहते हैं, तो आप गुण लिख सकते हैं सीधे

PrintWriter pw = new PrintWriter("test.properties"); 
for(Entry e : props.entrySet()) { 
    pw.println(e); 
} 
pw.close(); 
+0

या इसे धन्यवाद मिला .. – Rachel

+0

"prop.store (out1, null);" क्या यह संपत्ति फ़ाइल लिखने का एकमात्र तरीका है? – Rachel

+0

यह गुणों को सहेजने के लिए विशेष रूप से डिज़ाइन किया गया तरीका है, इसके बारे में विशेष क्या है कि यह गुणों को स्वचालित रूप से \ uxxxx formmat में परिवर्तित करता है जब गुण फ़ाइल में neecessary –

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