2012-05-19 10 views
14

मुझे पता है कि हमें अपने प्रश्नों के लिए कोड का एक स्निपिट जोड़ना है, लेकिन मैं गंभीरता से डूब गया हूं और मेरे सिर को लपेट नहीं सकता या किसी भी उदाहरण का पालन नहीं कर सकता।जावा फ़ाइल - एक फ़ाइल खोलें और इसे लिखें

असल में मैं फ़ाइल सी खोलना चाहता हूं: \ A.txt, जिसमें पहले से ही इसमें सामग्री है, और अंत में एक स्ट्रिंग लिखें। मूल रूप से इस तरह।

फ़ाइल a.txt शामिल हैं:

John 
Bob 
Larry 

मैं इसे खोल सकते हैं और अंत में मुकदमा लिखना चाहते हैं तो फ़ाइल अब शामिल हैं:

कोई कोड उदाहरण के लिए
John 
Bob 
Larry 
Sue 

क्षमा करें, मेरे मस्तिष्क है मृत आज सुबह ....

+13

ओह यह पोस्ट गीक-एंड-पॉक पर है! http://geek-and-poke.com/geekandpoke/2013/11/10/indirection – Lai

उत्तर

32

कृपया लैरी पेज और सर्गेई ब्रिन द्वारा दुनिया को दिए गए Google खोजें।

BufferedWriter out = null; 
try 
{ 
    FileWriter fstream = new FileWriter("out.txt", true); //true tells to append data. 
    out = new BufferedWriter(fstream); 
    out.write("\nsue"); 
} 
catch (IOException e) 
{ 
    System.err.println("Error: " + e.getMessage()); 
} 
finally 
{ 
    if(out != null) { 
     out.close(); 
    } 
} 
+11

मैंने पहले Google की जांच की और यह मुझे यहां ले गया;) – Josh

11

सुझाव:

  • File ऑब्जेक्ट बनाएं जो डिस्क पर पहले से मौजूद फ़ाइल को संदर्भित करता है।
  • FileWriter ऑब्जेक्ट का उपयोग करें, और उस फ़ाइल का उपयोग करें जो फ़ाइल ऑब्जेक्ट और बूलियन लेता है, उत्तरार्द्ध यदि true फ़ाइल में पाठ को संलग्न करने की अनुमति देगा तो यह मौजूद होगा।
  • फिर फ़ाइल निर्माता में अपने निर्माता में PrintWriter प्रारंभ करना प्रारंभ करें।
  • फिर अपने प्रिंटवाइटर पर println(...) पर कॉल करें, फ़ाइल में अपना नया टेक्स्ट लिखें।
  • हमेशा के रूप में, जब आप इसके साथ काम करते हैं तो अपने संसाधन (प्रिंटवाइटर) को बंद करें।
  • हमेशा की तरह, अपवादों को अनदेखा न करें बल्कि उन्हें पकड़ें और उन्हें संभालें।
  • प्रिंटवाइटर के close() प्रयास अंततः ब्लॉक में होना चाहिए।

जैसे

PrintWriter pw = null; 

    try { 
    File file = new File("fubars.txt"); 
    FileWriter fw = new FileWriter(file, true); 
    pw = new PrintWriter(fw); 
    pw.println("Fubars rule!"); 
    } catch (IOException e) { 
    e.printStackTrace(); 
    } finally { 
    if (pw != null) { 
     pw.close(); 
    } 
    } 

आसान, नहीं?

3

श्री ईल टिप्पणी उनका विस्तार करने के लिए, आप इसे इस प्रकार कर सकते हैं:

File file = new File("C:\\A.txt"); 
    FileWriter writer; 
    try { 
     writer = new FileWriter(file, true); 
     PrintWriter printer = new PrintWriter(writer); 
     printer.append("Sue"); 
     printer.close(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 

मत कहो हम फिर करने के लिए अच्छा नहीं है!

+3

1+ से ya, लेकिन आखिरकार ब्लॉक में प्रिंट लेखक को बंद करना न भूलें, कोशिश ब्लॉक में नहीं। आप किसी भी खतरनाक संसाधन नहीं चाहते हैं। मेरा मतलब देखने के लिए मेरा उदाहरण देखें। –

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