aquastar (05.10.2012)
Thema: jTextArea in .txt speichern
-
05.10.2012, 13:55 #1
jTextArea in .txt speichern
Hallo!
Folgendes Problem:
Ich möchte meine komplette jTextArea, welche bereits Text beinhaltet, in eine .txt speichern und dessen Pfad selbst auswählen.
Folgenden Code habe ich bisher:
Aber das scheint nicht zu funktionieren, er speichert mir zwar eine Datei am ausgewählten Pfad, jedoch ohne Textinhalt.Code:File file = new File("Nick.txt"); JFileChooser fc = new JFileChooser(); fc.showSaveDialog(null); file = fc.getSelectedFile(); BufferedWriter bw = new BufferedWriter(new FileWriter(file)); bw.write(jTextArea1.getText());
Was mache ich falsch?
Danke im Voraus und Gruß,
aquastar
-
05.10.2012, 13:56 #2
AW: jTextArea in .txt speichern
Ich kenne mich damit zwar nicht aus, aber vll. hilft es ja die Textdatei als .bat (Batch) Datei zu speichern?

-
05.10.2012, 13:59 #3
AW: jTextArea in .txt speichern
Nein, sie soll schon als .txt gespeichert werden.
-
05.10.2012, 14:21 #4U-Labs Legende
- Registriert seit
- 26.10.2011
- Beiträge
- 1.196
- Blog Entries
- 2
Thanked 1.598 Times in 726 Posts
AW: jTextArea in .txt speichern
Es fehlt ein
am Ende.Code:bw.flush();
-
The Following User Says Thank You to patlux For This Useful Post:
-
05.10.2012, 14:27 #5
AW: jTextArea in .txt speichern
Ok, danke Patrick, so funktioniert es schonmal, dass der Text drinne steht.
Nun habe ich noch folgendes Problem:
Meine jTextArea sieht z.B so aus:
In der Text datei steht es nun aber so:Text1
Text2
Text3
Also alles nebeneinander. Wie sorge ich dafür, dass sie untereinander stehen?Text1 Text2 Text3
-
05.10.2012, 15:41 #6
AW: jTextArea in .txt speichern
Ich kenne mich mit Java nicht aus, aber wie wäre es mit einem \n am Ende jeder Zeile?
-
05.10.2012, 16:36 #7
AW: jTextArea in .txt speichern
Das ist mir bewusst, ich frage mich nur gerade, wie es hineinfüge, da ich ja quasi den kompletten Text aus dem jTextArea hole und nicht jede einzelne Zeile. Ich könnte aber jede Zeile einzelnd holen und dann mit 'nem \n machen. Das sollte auch gehen.
_________________________
Hab nun das hier:
Aber ich bekomme eine Exception:Code:if (jTextArea1.getText().length() == 0) { JOptionPane.showMessageDialog(null, "Dein TextArea beinhaltet kein Text", "Fehler!", JOptionPane.ERROR_MESSAGE); } else { String[] lines = jTextArea1.getText().split(System.getProperty("line.seperator")); File file = new File("Nick.txt"); JFileChooser fc = new JFileChooser(); fc.showSaveDialog(null); file = fc.getSelectedFile(); BufferedWriter bw = new BufferedWriter(new FileWriter(file)); for(int i = 0; i < lines.length; i++){ bw.write(lines[i]); bw.newLine(); } bw.flush(); bw.close();
Ich hab keine Ahnung, woran es liegt. Hat jemand eine Idee? :/Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
-
05.10.2012, 17:00 #8
AW: jTextArea in .txt speichern
Du hast bei
null angegeben daher der Fehler.Code:fc.showSaveDialog(null);
So müsste es gehen
Code:if (jTextArea1.getText().length() == 0) { JOptionPane.showMessageDialog(null, "Dein TextArea beinhaltet kein Text", "Fehler!", JOptionPane.ERROR_MESSAGE); }else { try { String[] lines = jTextArea1.getText().split("\n"); JFileChooser fc = new JFileChooser(); fc.showSaveDialog(jTextArea1); File file = fc.getSelectedFile(); FileWriter writer = new FileWriter(file, false); for (int i = 0; i < lines.length; i++){ writer.write(lines[i] + "\n" ); } writer.flush(); writer.close(); } catch (Exception e) { e.printStackTrace(); } }Geändert von uncopyable (05.10.2012 um 17:03 Uhr)

while( behappy() ) { code(); }
-
The Following User Says Thank You to uncopyable For This Useful Post:
aquastar (05.10.2012)
-
05.10.2012, 17:09 #9
AW: jTextArea in .txt speichern
So hab ich das nun, und dennoch kommt die NullPointerException. Wo ist eigentlich der Unterschied, wenn ich beim openSaveDialog null oder jTextArea1 schreibe?Code:try { if (jTextArea1.getText().length() == 0) { JOptionPane.showMessageDialog(null, "Dein TextArea beinhaltet kein Text", "Fehler!", JOptionPane.ERROR_MESSAGE); } else { String[] lines = jTextArea1.getText().split(System.getProperty("line.seperator")); File file = new File("Nick.txt"); JFileChooser fc = new JFileChooser(); fc.showSaveDialog(jTextArea1); file = fc.getSelectedFile(); FileWriter writer = new FileWriter(file); for (int i = 0; i < lines.length; i++) { writer.write(lines[i] + (System.getProperty("line.seperator"))); } writer.flush(); writer.close(); } } catch (IOException ex) { ex.printStackTrace(); }
Wie dem auch sei, bisher bleibt der Fehler leider bestehen.
-
05.10.2012, 17:17 #10
AW: jTextArea in .txt speichern
Hab es mal schnell selbst ausprobiert und bei mit geht es
Meine Code:
Code:import java.awt.BorderLayout; public class test extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { test frame = new test(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public test() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); setContentPane(contentPane); final JTextPane jTextArea1 = new JTextPane(); contentPane.add(jTextArea1, BorderLayout.CENTER); JButton btnNewButton = new JButton("New button"); contentPane.add(btnNewButton, BorderLayout.NORTH); btnNewButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { if (jTextArea1.getText().length() == 0) { new JOptionPane().showMessageDialog(null, "Dein TextArea beinhaltet kein Text", "Fehler!", JOptionPane.ERROR_MESSAGE); }else { try { String[] lines = jTextArea1.getText().split("\n"); JFileChooser fc = new JFileChooser(); fc.showSaveDialog(jTextArea1); File file = fc.getSelectedFile(); FileWriter writer = new FileWriter(file, false); for (int i = 0; i < lines.length; i++){ writer.write(lines[i] + "\n" ); } writer.flush(); writer.close(); } catch (Exception e) { e.printStackTrace(); } } } }); } }
showSaveDialog erfordert ein component und kann eigentlich nicht null sein.
Kannst mir mal die Zeile geben wo der Fehler auftritt?

while( behappy() ) { code(); }
Ähnliche Themen
-
Online texte speichern für immer?
Von ElkosMED im Forum WebmasterAntworten: 2Letzter Beitrag: 01.03.2014, 22:31 -
VB.Net Fortschritt speichern?
Von x BoooM x im Forum .NetAntworten: 4Letzter Beitrag: 10.03.2013, 16:57 -
C# Logindaten speichern
Von Saad im Forum .NetAntworten: 12Letzter Beitrag: 26.10.2012, 15:20 -
VB.Net Seitenquelltext in in Textdatei speichern
Von rVs14 im Forum .NetAntworten: 5Letzter Beitrag: 03.04.2012, 13:17
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.
Zitieren