2011-12-17 13 views
61

यदि आप FileOutputStream विधियों के साथ काम करते हैं, तो हर बार जब आप इस विधि के माध्यम से अपनी फ़ाइल लिखते हैं तो आप अपना पुराना डेटा खो चुके हैं। क्या FileOutputStream के माध्यम से अपना पुराना डेटा खोए बिना फ़ाइल लिखना संभव है?पुराना डेटा खोए बिना FileOutputStream के साथ डेटा कैसे लिखें?

+1

अगर आप सोच रहे हैं, तो आप कैसे काम कर सकते थे यह आपके लिए बाहर है, आप जावाडोक पढ़ सकते थे। http://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html –

+0

[OutputStreamWriter FileOutputStream के बजाय प्रयोग किया जाता है] [1] [1]: http://stackoverflow.com/questions/23320070/appending-a-string-to-an-existing-file-using-outputstreamwriter/23320195?noredirect=1#comment35707473_23320195 – sourabh

+1

@ पीटर Lawrey स्वयं को सीखने के लिए, आमतौर पर इंटरनेट से पूछता है। और जावा दस्तावेज़ से पहले पहला परिणाम है :-) –

उत्तर

114

उपयोग निर्माता है कि एक File और एक boolean

FileOutputStream(File file, boolean append) 

लेता है और true को बूलियन सेट। इस तरह, आपके द्वारा लिखे गए डेटा को फ़ाइल के अंत में जोड़ा जाएगा, बजाय पहले से मौजूद ओवरराइट करने के बजाए।

18

फाइल करने के लिए सामग्री जोड़कर के लिए निर्माता का उपयोग करें:

FileOutputStream(File file, boolean append) 
Creates a file output stream to write to the file represented by the specified File object. 

तो एक फाइल करने के लिए संलग्न करने के लिए कहते हैं कि "abc.txt" का उपयोग

FileOutputStream fos=new FileOutputStream(new File("abc.txt"),true);