Daten in eine Text datei schreiben !!!!

Status
Nicht offen für weitere Antworten.

kaper28

Bekanntes Mitglied
Hallo Kollegen, ich möchte daten die ich in diesem Adress-Buch eintarge in eine Text datei schreiben. Wie kann ich das ?


Java:
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

class Deutsch extends JFrame {
	JLabel name, nachname, adresse, tel, handy, fax, mail;
	JButton speichern, ende;
	JTextField field_name, field_nachname, field_adresse, field_tel,
			field_handy, field_fax, field_mail;

	class Berechnen1 implements ActionListener {
		public void actionPerformed(ActionEvent e) {
			String titel;

			titel = e.getActionCommand();

			if (titel.equals(" Ende ")) {

				System.exit(0);
			}

			if (titel.equals(" Speichern ")) {

				System.exit(0);
			}

		}

	}

	public Deutsch() {

		// Labels
		name = new JLabel(" Name : ");
		name.setBounds(20, 20, 100, 100);

		nachname = new JLabel(" Nachname : ");
		nachname.setBounds(20, 60, 100, 100);

		adresse = new JLabel(" Adresse : ");
		adresse.setBounds(20, 100, 100, 100);

		tel = new JLabel(" Telefon : ");
		tel.setBounds(20, 140, 100, 100);

		handy = new JLabel(" Handy : ");
		handy.setBounds(20, 180, 100, 100);

		fax = new JLabel(" Fax : ");
		fax.setBounds(20, 220, 100, 100);

		mail = new JLabel(" e-mail : ");
		mail.setBounds(20, 260, 100, 100);

		// Text-field
		field_name = new JTextField();
		field_name.setBounds(130, 62, 100, 17);

		field_nachname = new JTextField();
		field_nachname.setBounds(130, 102, 100, 17);

		field_adresse = new JTextField();
		field_adresse.setBounds(130, 142, 100, 17);

		field_tel = new JTextField();
		field_tel.setBounds(130, 182, 100, 17);

		field_handy = new JTextField();
		field_handy.setBounds(130, 222, 100, 17);

		field_fax = new JTextField();
		field_fax.setBounds(130, 262, 100, 17);

		field_mail = new JTextField();
		field_mail.setBounds(130, 302, 100, 17);

		// Buttons

		speichern = new JButton(" Speichern ");
		speichern.setBounds(20, 352, 100, 35);

		ende = new JButton(" Ende ");
		ende.setBounds(130, 352, 100, 35);

		this.ende.addActionListener(new Berechnen1());
		this.speichern.addActionListener(new Berechnen1());

		this.add(name);
		this.add(field_name);
		this.add(nachname);
		this.add(field_nachname);
		this.add(adresse);
		this.add(field_adresse);
		this.add(tel);
		this.add(field_tel);
		this.add(handy);
		this.add(field_handy);
		this.add(fax);
		this.add(field_fax);
		this.add(mail);
		this.add(field_mail);
		this.add(speichern);
		this.add(ende);
		this.setLayout(null);
		this.setSize(300, 450);
		this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);

		this.setVisible(true);
	}
}
 
Leute ich habe mir so was ausgedacht...

Java:
if (titel.equals(" Speichern ")) {

				try {
					FileWriter dateiStream= new FileWriter("D:/test.txt");
					PrintWriter ausgabe= new PrintWriter(dateiStream);
					
					String_name=field_name.getText();
					String_nachname=field_nachname.getText();
					String_adresse=field_adresse.getText();
					
					ausgabe.println(String_name);
					ausgabe.println(String_nachname);
					ausgabe.println(String_adresse);
					ausgabe.close();
				} catch (IOException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
				
			}

		}

	}

Funktioniert aber ich weiß nicht ob das der beste weg ist ?
 
geht doch 😉

zum schreiben isses ne vernünftige art, wenne das ganze noch wieder einlesen willst:

pro eintrag eine zeile in die txt mit einem bestimmten zeichen getrennt
hat den vorteil das du genau weißt das eine zeile ein datensatz is un bei welchem zeichen du splitten musst.
 
Das geht , nur wenn ich auf speichern drücke dann speichert er mir nur die neuen Daten die alten werden gelöscht. Wie kann kann ich es machen das die alten Daten auch bleiben ?.
 
nuja, ich vermute das du die alten daten auch irgendwie im prog brauchst bzw brauchen willst...

ich würde die txt am anfang einlesen, die daten in ne arraylist packen (als strings der zeilen) und beim speichern einfach nur den arraylist inhalt reihenweise speichern
 
field_name... Variablen schreibt man camelcase also fieldName... und ja das ist wichtig...


Java:
class Berechnen1 implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            String titel;
 
            titel = e.getActionCommand();
 
            if (titel.equals(" Ende ")) {
 
                System.exit(0);
            }
 
            if (titel.equals(" Speichern ")) {
 
                System.exit(0);
            }
 
        }
 
    }
gefällt mir nicht...

versuch das mal
Java:
ende = new JButton(" Ende ");
		ende.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e) {
				hier dein code...
				
			}
		});
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben