Hallo,
seit kurzem bin ich dabei mir die JAVA-Programmierung interdisziplinär (Internet) beizubringen.
Habe jetzt ein für mich nützliches und lauffähiges Programm erstellt - siehe untenstehenden Quelltext.
Dieses Programm möchte ich erweitern und zwar sollen die Array-Werte in eine separate Datei gespeichert werden, bisher sind meine derartigen Versuche leider gescheitert.
Es währe prima wenn mir jemand helfen könnte.
Quelltext:
import java.util.*;
import java.io.*;
import java.awt.* ;
import java.awt.event.*;
import javax.swing.*;
// Die Packages mit den benötigten Klassen wurden importiert
// Erstellen einer Klasse mit dem Namen Wochenmengen unter Nutzung der importierten Klassen
public class Wochenmengen extends JFrame implements ActionListener
{
JLabel heading = new JLabel("Eingabe der neuen Wochenmengen vom :");// Erstellung eines Labels-Objects mit der gewünschten Darstellung
// (Dem Konstruktor wird der String "Eingabe der neuen Lottozahlen" übertragen)
// JLabel ist die Klasse mit allen erforderlichen Methoden
// heading ist die Referenzvariable
JLabel datLabel = new JLabel("Datum eingeben: ");
JLabel erstLabel = new JLabel("ProduktA Menge eingeben: ");
JLabel zweiLabel = new JLabel("ProduktB Menge eingeben: ");
JLabel dreiLabel = new JLabel("ProduktC Menge eingeben: ");
JLabel vierLabel = new JLabel("ProduktD Menge eingeben: ");
JLabel fuenLabel = new JLabel("ProduktE Menge eingeben: ");
JLabel perLabel = new JLabel("Array-Werte: ");
JTextField inDat = new JTextField( 6 ); // Erstellung eines Text-Eingabefeld-Objektes mit der gewünschten Feldlänge
JTextField inErst = new JTextField( 2 );
JTextField inZwei = new JTextField( 2 );
JTextField inDrei = new JTextField( 2 );
JTextField inVier = new JTextField( 2 );
JTextField inFuen = new JTextField( 2 );
JTextField outPer = new JTextField( 6 ); // Erstellung eines Text-Ausgabefeldes mit der gewünschten Feldlänge
JButton doit = new JButton("speichern!");
JPanel hedPanel = new JPanel();
JPanel datPanel = new JPanel();
JPanel erstPanel = new JPanel();
JPanel zweiPanel = new JPanel();
JPanel dreiPanel = new JPanel();
JPanel vierPanel = new JPanel();
JPanel fuenPanel = new JPanel();
JPanel perPanel = new JPanel();
JPanel butPanel = new JPanel();
String quers; // String-Referenzvariable definieren - für das output-Ergebnis
String datZ, ersteZ, zweiteZ, dritteZ, vierteZ, fuenfteZ;
public Wochenmengen()
{
setTitle( "Wochenmengen" ); // Mit set Title wird die Frame-Überschrift gesetzt btw. als String übergeben
outPer.setEditable( false ); // hier wird festgelegt das der Ausgabewert im Ausgabe-Textfeld von aussen nicht geändert werden kann
setLayout( new FlowLayout() );
// den Panels Komponenten hinzufügen und zwar die Labels und die Textfelder
hedPanel.add( heading );
datPanel.add( datLabel );
datPanel.add( inDat );
erstPanel.add( erstLabel );
erstPanel.add( inErst );
zweiPanel.add( zweiLabel );
zweiPanel.add( inZwei );
dreiPanel.add( dreiLabel );
dreiPanel.add( inDrei );
vierPanel.add( vierLabel );
vierPanel.add( inVier );
fuenPanel.add( fuenLabel );
fuenPanel.add( inFuen );
perPanel.add( perLabel );
perPanel.add( outPer );
butPanel.add( doit );
// dem Frame Panels hinzufügen
add( hedPanel );
add( heading );
add( datPanel );
add( erstPanel );
add( zweiPanel );
add( dreiPanel );
add( vierPanel );
add( fuenPanel );
add( perPanel );
add( doit );
add( butPanel );
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
doit.addActionListener( this ); // hier wird der Action-Listener (Überbringer) des Buttons definiert
}
// Die Application - also ein ganz neuer Programmteil
public void actionPerformed( ActionEvent evt) // betrachte die Information in ActionEvent
{
String userIn ;
userIn = inDat.getText() ;
datZ = userIn;
userIn = inErst.getText() ; // rufe die getText-Methode auf (holt sich den Wert von inErst)
ersteZ = userIn;
userIn = inZwei.getText() ; // rufe die getText-Methode auf (holt sich den Wert von inZwei)
zweiteZ = userIn;
userIn = inDrei.getText() ;
dritteZ = userIn;
userIn = inVier.getText() ;
vierteZ = userIn;
userIn = inFuen.getText() ;
fuenfteZ = userIn;
String[][] array = new String[1][6]; // Array erstellen und mit Werte füllen
array[0][0] = datZ;
array[0][1] = ersteZ;
array[0][2] = zweiteZ;
array[0][3] = dritteZ;
array[0][4] = vierteZ;
array[0][5] = fuenfteZ;
quers = array[0][0];
outPer.setText(quers); // setzt ihn sichtbar mittels outPer in den Frame
repaint();
}
public static void main ( String[] args )
{
Wochenmengen rahmen = new Wochenmengen() ;
rahmen.setSize( 280, 600 );
rahmen.setResizable( false );
rahmen.setVisible( true );
}
}
seit kurzem bin ich dabei mir die JAVA-Programmierung interdisziplinär (Internet) beizubringen.
Habe jetzt ein für mich nützliches und lauffähiges Programm erstellt - siehe untenstehenden Quelltext.
Dieses Programm möchte ich erweitern und zwar sollen die Array-Werte in eine separate Datei gespeichert werden, bisher sind meine derartigen Versuche leider gescheitert.
Es währe prima wenn mir jemand helfen könnte.
Quelltext:
import java.util.*;
import java.io.*;
import java.awt.* ;
import java.awt.event.*;
import javax.swing.*;
// Die Packages mit den benötigten Klassen wurden importiert
// Erstellen einer Klasse mit dem Namen Wochenmengen unter Nutzung der importierten Klassen
public class Wochenmengen extends JFrame implements ActionListener
{
JLabel heading = new JLabel("Eingabe der neuen Wochenmengen vom :");// Erstellung eines Labels-Objects mit der gewünschten Darstellung
// (Dem Konstruktor wird der String "Eingabe der neuen Lottozahlen" übertragen)
// JLabel ist die Klasse mit allen erforderlichen Methoden
// heading ist die Referenzvariable
JLabel datLabel = new JLabel("Datum eingeben: ");
JLabel erstLabel = new JLabel("ProduktA Menge eingeben: ");
JLabel zweiLabel = new JLabel("ProduktB Menge eingeben: ");
JLabel dreiLabel = new JLabel("ProduktC Menge eingeben: ");
JLabel vierLabel = new JLabel("ProduktD Menge eingeben: ");
JLabel fuenLabel = new JLabel("ProduktE Menge eingeben: ");
JLabel perLabel = new JLabel("Array-Werte: ");
JTextField inDat = new JTextField( 6 ); // Erstellung eines Text-Eingabefeld-Objektes mit der gewünschten Feldlänge
JTextField inErst = new JTextField( 2 );
JTextField inZwei = new JTextField( 2 );
JTextField inDrei = new JTextField( 2 );
JTextField inVier = new JTextField( 2 );
JTextField inFuen = new JTextField( 2 );
JTextField outPer = new JTextField( 6 ); // Erstellung eines Text-Ausgabefeldes mit der gewünschten Feldlänge
JButton doit = new JButton("speichern!");
JPanel hedPanel = new JPanel();
JPanel datPanel = new JPanel();
JPanel erstPanel = new JPanel();
JPanel zweiPanel = new JPanel();
JPanel dreiPanel = new JPanel();
JPanel vierPanel = new JPanel();
JPanel fuenPanel = new JPanel();
JPanel perPanel = new JPanel();
JPanel butPanel = new JPanel();
String quers; // String-Referenzvariable definieren - für das output-Ergebnis
String datZ, ersteZ, zweiteZ, dritteZ, vierteZ, fuenfteZ;
public Wochenmengen()
{
setTitle( "Wochenmengen" ); // Mit set Title wird die Frame-Überschrift gesetzt btw. als String übergeben
outPer.setEditable( false ); // hier wird festgelegt das der Ausgabewert im Ausgabe-Textfeld von aussen nicht geändert werden kann
setLayout( new FlowLayout() );
// den Panels Komponenten hinzufügen und zwar die Labels und die Textfelder
hedPanel.add( heading );
datPanel.add( datLabel );
datPanel.add( inDat );
erstPanel.add( erstLabel );
erstPanel.add( inErst );
zweiPanel.add( zweiLabel );
zweiPanel.add( inZwei );
dreiPanel.add( dreiLabel );
dreiPanel.add( inDrei );
vierPanel.add( vierLabel );
vierPanel.add( inVier );
fuenPanel.add( fuenLabel );
fuenPanel.add( inFuen );
perPanel.add( perLabel );
perPanel.add( outPer );
butPanel.add( doit );
// dem Frame Panels hinzufügen
add( hedPanel );
add( heading );
add( datPanel );
add( erstPanel );
add( zweiPanel );
add( dreiPanel );
add( vierPanel );
add( fuenPanel );
add( perPanel );
add( doit );
add( butPanel );
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
doit.addActionListener( this ); // hier wird der Action-Listener (Überbringer) des Buttons definiert
}
// Die Application - also ein ganz neuer Programmteil
public void actionPerformed( ActionEvent evt) // betrachte die Information in ActionEvent
{
String userIn ;
userIn = inDat.getText() ;
datZ = userIn;
userIn = inErst.getText() ; // rufe die getText-Methode auf (holt sich den Wert von inErst)
ersteZ = userIn;
userIn = inZwei.getText() ; // rufe die getText-Methode auf (holt sich den Wert von inZwei)
zweiteZ = userIn;
userIn = inDrei.getText() ;
dritteZ = userIn;
userIn = inVier.getText() ;
vierteZ = userIn;
userIn = inFuen.getText() ;
fuenfteZ = userIn;
String[][] array = new String[1][6]; // Array erstellen und mit Werte füllen
array[0][0] = datZ;
array[0][1] = ersteZ;
array[0][2] = zweiteZ;
array[0][3] = dritteZ;
array[0][4] = vierteZ;
array[0][5] = fuenfteZ;
quers = array[0][0];
outPer.setText(quers); // setzt ihn sichtbar mittels outPer in den Frame
repaint();
}
public static void main ( String[] args )
{
Wochenmengen rahmen = new Wochenmengen() ;
rahmen.setSize( 280, 600 );
rahmen.setResizable( false );
rahmen.setVisible( true );
}
}
Zuletzt bearbeitet: