2012-04-20 13 views
6

मैंने यह पता लगाया है कि रेखा से लाइन में कैसे पढ़ा जाए और टेक्स्ट टेक्स्ट लाइन की सामग्री को jtextarea में पंक्तिबद्ध करके प्रदर्शित किया जाए और मैंने यह पता लगाया है कि रेखा से लाइन कैसे लिखना है तारों की एक सरणी से पाठ दस्तावेज़ में। मुझे टेक्स्टरी से प्रत्येक पंक्ति प्राप्त करने में मुश्किल हो रही है, जैसे ही मैं प्रत्येक पंक्ति को सरणी में प्राप्त कर सकता हूं, मुझे जाना अच्छा लगता है। नीचे दिए गए कोड मैं फाइल करने के लिए प्रत्येक पंक्ति लिखने के लिए उपयोग करने के लिए जा रहा हूँ ...टेक्स्ट क्षेत्र से लाइन द्वारा लाइन को कैसे पढ़ा जाए

public class FileWrite { 

    public static void FileClear(String FileName) throws IOException{ 
     FileWriter fstream = new FileWriter(FileName,true); 
     BufferedWriter out = new BufferedWriter(fstream); 
     out.write(""); 
    } 

    public static void FileWriters(String FileName, String Content) throws IOException 
    { 
     FileWriter fstream = new FileWriter(FileName,true); 
     BufferedWriter out = new BufferedWriter(fstream); 
     out.append(Content); 
     out.newLine(); 

    } 
} 

धन्यवाद

+0

संभावित डुप्लिकेट: http://stackoverflow.com/questions/454908/split-java-string-by-new-line – erikxiv

उत्तर

20

क्या आप TextArea से मिलता है सिर्फ एक स्ट्रिंग है। इसे नई लाइन पर विभाजित करें और आपको अपना स्ट्रिंग मिला है []।

for (String line : textArea.getText().split("\\n")) doStuffWithLine(line); 
+0

इसलिए यदि मेरे पास टेक्स्ट की 10 पंक्तियों वाली फ़ाइल है जो मुझे लाइनें देनी चाहिए [1-9 ]? – Charlie

+0

सरणी सूचकांक शून्य-आधारित हैं। [0-9]। –

+0

मेरा मतलब है 0 व्हाओप्स हाहा, मेरे पास एक सवाल है, जब मैं अपना लूप चलाने के लिए चलाता हूं तो यह मुझे अंतिम पंक्ति पर एक arrayindexoutofbounds त्रुटि देता है, क्योंकि ऐसा इसलिए है क्योंकि इसके बाद कोई और रेखा नहीं है, तो यह इसे विभाजित नहीं कर सकती है? मैं इसे कैसे ठीक करूं? धन्यवाद – Charlie

0

मैंने इस प्रश्न का उत्तर देने के लिए JTextArea क्लास द्वारा प्रदान की गई विधियों का उपयोग करने का प्रयास किया।

आशा है कि यह किसी की मदद करे क्योंकि जब मैं इसे गुगल करता हूं तो मुझे जवाब नहीं मिल सका। सभी है कि अब आप क्या करने की जरूरत विधि processLine (स्ट्रिंग lineStr)

 int lines = textArea.getLineCount(); 

     try{// Traverse the text in the JTextArea line by line 
      for(int i = 0; i < lines; i ++){ 
       int start = textArea.getLineStartOffset(i); 
       int end = texttArea.getLineEndOffset(i); 
       // Implement method processLine 
       processLine(textArea.getText(start, end-start)); 

      } 
     }catch(BadLocationException e){ 
      // Handle exception as you see fit 
     } 

लागू वर्ग की परिभाषा यहाँ JTextArea Java 1.7

मुबारक कोडिंग देखें है !!!

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