Hallo,
ich habe mir schon diverse Threads übers zeilenweise auslesen einer txt Datei durchgelesen. Leider konnte ich das nicht auf mein Programm übertragen.
Über Hilfe würde ich mich sehr freuen.
Mein Programm funtioniert wie folgt:
1. Ich fülle ein Array mit Zahlen
2. dieses Array wird in eine txt gespeichert. Jeder Platzhalter bekommt eine neue Zeile. Der Inhalt der txt sieht dann z.B. so aus:
3
5
4
2
3. Diesen Datensatz möchte ich wieder in mein Array speichern können, indem ich die txt auslesen.
die erst Zeile funtioniert, aber er rückt nicht nach unten.
Beim BufferedReader muss es doch auch eine Methode für den Zeilensprung geben wie beim Erstellen der Datei mit dem BufferedWriter. newLine oder so ...
An diesem Punkt bin ich nicht weitergekommen.
Hier das ganze Programm:
ich habe mir schon diverse Threads übers zeilenweise auslesen einer txt Datei durchgelesen. Leider konnte ich das nicht auf mein Programm übertragen.
Über Hilfe würde ich mich sehr freuen.
Mein Programm funtioniert wie folgt:
1. Ich fülle ein Array mit Zahlen
2. dieses Array wird in eine txt gespeichert. Jeder Platzhalter bekommt eine neue Zeile. Der Inhalt der txt sieht dann z.B. so aus:
3
5
4
2
3. Diesen Datensatz möchte ich wieder in mein Array speichern können, indem ich die txt auslesen.
die erst Zeile funtioniert, aber er rückt nicht nach unten.
Beim BufferedReader muss es doch auch eine Methode für den Zeilensprung geben wie beim Erstellen der Datei mit dem BufferedWriter. newLine oder so ...
An diesem Punkt bin ich nicht weitergekommen.
Hier das ganze Programm:
Code:
public class MainGUI
{
public static void main(String args[])
{
GUIAnwendung gui=new GUIAnwendung();
}
}
Code:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
import com.sun.image.codec.jpeg.*;
import java.awt.image.*;
import java.text.*;
public class GUIAnwendung
{
Fenster f=new Fenster();
Pausen pn=new Pausen();
Diagramm dia=new Diagramm();
Dateiverarbeitung da=new Dateiverarbeitung();
TextField eingZahl=new TextField("");
TextField eingDateiname=new TextField("");
Label labelDateiname=new Label("Dateiname");
Label[][] ausgZahlen=new Label[3][4];
Button eingabe=new Button("Eingabe");
Button speichern=new Button("Speichern");
Button laden=new Button("Laden");
Vector daten=new Vector();
int[] zahlen=new int[12];
int z1,zahlen_b;
public GUIAnwendung()
{
eingabe.addActionListener(new AbhoererEingabe());
speichern.addActionListener(new AbhoererSpeichern());
laden.addActionListener(new AbhoererLaden());
f.setLayout(null);
eingZahl.setBounds(120,25,80,20);
eingabe.setBounds(220,25,70,20);
labelDateiname.setBounds(120,50,80,20);
eingDateiname.setBounds(120,70,80,20);
laden.setBounds(220,70,70,20);
speichern.setBounds(220,95,70,20);
f.add (eingZahl);
f.add (eingabe);
f.add (labelDateiname);
f.add (eingDateiname);
f.add (laden);
f.add (speichern);
for (int i=0;i<3;i++){
for (int j=0;j<4;j++){
ausgZahlen[i][j]=new Label("");
ausgZahlen[i][j].setBounds(25+i*25,25+j*25,20,20);
ausgZahlen[i][j].setBackground(Color.LIGHT_GRAY);
f.add(ausgZahlen[i][j]);
}
}
f.setSize(300,126);
f.setLocation(400,425);
f.show();
}
class AbhoererEingabe implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
z1=Integer.parseInt(eingZahl.getText());
for (int i=1;i<12;i++){
zahlen_b=zahlen[i];
zahlen[i-1]=zahlen_b;
}
zahlen[11]=z1;
for (int i=0;i<3;i++){
for (int j=0;j<4;j++){
ausgZahlen[i][j].setText(""+zahlen[i+3*j]);
}
}
}
}
class AbhoererSpeichern implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
da.dateiAnlegen(eingDateiname.getText());
String[] s=new String[12];
for(int i=0;i<12;i++){
s[i]=Integer.toString(zahlen[11-i]);
da.zeileAusgeben(s[i]);
}
da.dateiSchliessen();
}
}
class AbhoererLaden implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String[] s2=new String[12];
s2[0]=da.lesen(eingDateiname.getText());
s2[1]=da.lesen(eingDateiname.getText());
zahlen[11]=Integer.parseInt(s2[0]);
zahlen[10]=Integer.parseInt(s2[1]);
for (int i=0;i<3;i++){
for (int j=0;j<4;j++){
ausgZahlen[i][j].setText(""+zahlen[i+3*j]);
}
}
}
}
}
Code:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.util.*;
public class Dateiverarbeitung {
BufferedWriter f1;
BufferedReader f2;
public Dateiverarbeitung(){}
public void dateiAnlegen(String n){
try{
f1=new BufferedWriter(new FileWriter(n));
}
catch (IOException e){
System.out.println("Fehler beim Erstellen der Datei");
}
}
public void zeileAusgeben(String t){
try{
f1.write(t);
f1.newLine();
}
catch (IOException e){
System.out.println("Fehler beim Erstellen der Datei");
}
}
public void dateiSchliessen(){
try{
f1.close();
}
catch (IOException e){
System.out.println("Fehler beim Erstellen der Datei");
}
}
public String lesen(String n){
String dat=new String();
try{
f2=new BufferedReader(new FileReader(n));
dat=f2.readLine();
f2.close();
}
catch (IOException e){}
return dat;
}
}
Code:
import java.awt.*;
import java.awt.event.*;
public class Fenster extends Frame
{
public Fenster()
{
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);}});
}
}