IcocaI
Mitglied
Hi
ich darf mal wieder an JAVA ran ... hab da folgendes Problem:
sollte eigentlich einfach sein aber, wenn ich aus einer Datei lesen möchte, fängt der erst am Ende an. Jedenfalls kommt mir das so vor, weil der mir nur null wiedergibt.
Sitze daran schon ca. ne Stunde und komme nicht mehr weiter.
Mitarbeiter = Oberklasse
Angestellter = Unterklasse
Arbeiter = Unterklasse
Das ganze ist eine Schulaufgabe ist aber nicht so wichtig nur ne kleine Übung die ich ohne das einlesesn einer Datei programmieren könnte aber da ich keine lust habe das ganze immer wieder und wieder von vorne einzugeben, wollt ichs halt über ne Datei lösen.
Also wieso ließt er nicht bzw. wieso bekomme ich immer NULL?
ich darf mal wieder an JAVA ran ... hab da folgendes Problem:
sollte eigentlich einfach sein aber, wenn ich aus einer Datei lesen möchte, fängt der erst am Ende an. Jedenfalls kommt mir das so vor, weil der mir nur null wiedergibt.
Sitze daran schon ca. ne Stunde und komme nicht mehr weiter.
Java:
Gehaltsabrechnung
package Aufgabe3;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
public class Gehaltsabrechnung {
StdInput r;
Arbeiter []arbeiter = new Arbeiter[5];
Angestellter []angestellter = new Angestellter[5];
int personalnummer;
String name;
double grundgehalt;
double ortszuschlag;
double stundenlohn;
double anzahl_der_Arbeitsstunden;
public void start() throws IOException{
System.out.print("Arbeiter dann Angestellter\n\n");
for(int i = 0; i < arbeiter.length; i++){
arbeiter[i] = new Arbeiter(0, null, 0, 0);
angestellter[i] = new Angestellter(0, null, 0, 0);
}
this.mArbeiter();
// this.mAngestellter();
this.mAusgabe();
}
public void mArbeiter(){
try{
FileReader out = new FileReader("Arbeiter.txt");
BufferedReader br = new BufferedReader(out);
String zeile = null;
for(int i = 0; i < 5; i++){
System.out.print(br.readLine());
while((zeile = br.readLine()) != null){
personalnummer = Integer.valueOf(br.readLine());
//arbeiter[i].setPersonalnummer(personalnummer);
name =br.readLine();
//arbeiter[i].setName(name);
stundenlohn = Double.valueOf(br.readLine());
//arbeiter[i].setStundenlohn(stundenlohn);
anzahl_der_Arbeitsstunden = Double.valueOf(br.readLine());
//arbeiter[i].setAnzahl_der_arbeitsstunden(anzahl_der_Arbeitsstunden);
arbeiter[i] = new Arbeiter(personalnummer, name, stundenlohn, anzahl_der_Arbeitsstunden);
}
}
br.close();
} catch(IOException e){
e.printStackTrace();
}
}
public void mAngestellter() throws IOException{
FileReader out = new FileReader("Angestellter.txt");
BufferedReader br = new BufferedReader(out);
String zeile = null;
for(int i = 0; i < 5; i++){
while((zeile = br.readLine()) != null){
personalnummer = Integer.valueOf(br.readLine());
//angestellter[i].setPersonalnummer(personalnummer);
name = br.readLine();
//angestellter[i].setName(name);
grundgehalt = Double.valueOf(br.readLine());
//angestellter[i].setGrundgehalt(grundgehalt);
ortszuschlag = Double.valueOf(br.readLine());
//angestellter[i].setOrtszuschlag(ortszuschlag);
angestellter[i] = new Angestellter(personalnummer, name, grundgehalt, ortszuschlag);
i++;
}
}
br.close();
}
public void mAusgabe(){
for(int x = 0; x < 5; x++){
System.out.print("\n\nPersonalnummer: "+angestellter[x].getPersonalnummer());
System.out.print("\nName: "+angestellter[x].getName());
System.out.print("\nGrundgehalt: "+angestellter[x].getGrundgehalt());
System.out.print("\nOrtszuschlag: "+angestellter[x].getOrtszuschlag());
}
for(int y = 0; y < 5; y++){
System.out.print("\n\nPersonalnummer: "+arbeiter[y].getPersonalnummer());
System.out.print("\nName: "+arbeiter[y].getName());
System.out.print("\nStundenlohn: "+arbeiter[y].getStundenlohn());
System.out.print("\nAnzahl der Stunden: "+arbeiter[y].getAnzahl_der_arbeitsstunden());
}
}
}
Java:
Angestellter
package Aufgabe3;
public class Angestellter extends Mitarbeiter{
private double grundgehalt;
private double ortszuschlag;
public Angestellter(int personalnummer, String name, double grundgehalt, double ortszuschlag) {
super(personalnummer, name);
this.grundgehalt = grundgehalt;
this.ortszuschlag = ortszuschlag;
}
public double getGrundgehalt() {
return grundgehalt;
}
public void setGrundgehalt(double grundgehalt) {
this.grundgehalt = grundgehalt;
}
public double getOrtszuschlag() {
return ortszuschlag;
}
public void setOrtszuschlag(double ortszuschlag) {
this.ortszuschlag = ortszuschlag;
}
public double monatsbrutto(){
return grundgehalt + ortszuschlag;
}
}
Java:
Arbeiter
package Aufgabe3;
public class Arbeiter extends Mitarbeiter{
private double stundenlohn;
private double anzahl_der_arbeitsstunden;
public Arbeiter(int personalnummer, String name, double stundenlohn, double anzahl_der_arbeitsstunden) {
super(personalnummer, name);
this.stundenlohn = stundenlohn;
this.anzahl_der_arbeitsstunden = anzahl_der_arbeitsstunden;
}
public double getStundenlohn() {
return stundenlohn;
}
public void setStundenlohn(double stundenlohn) {
this.stundenlohn = stundenlohn;
}
public double getAnzahl_der_arbeitsstunden() {
return anzahl_der_arbeitsstunden;
}
public void setAnzahl_der_arbeitsstunden(double anzahl_der_arbeitsstunden) {
this.anzahl_der_arbeitsstunden = anzahl_der_arbeitsstunden;
}
public double monatsbrutto(){
return stundenlohn * anzahl_der_arbeitsstunden;
}
}
Java:
Mitarbeiter
package Aufgabe3;
public class Mitarbeiter {
private int personalnummer;
private String name;
public Mitarbeiter(int personalnummer, String name){
this.personalnummer = personalnummer;
this.name = name;
}
public int getPersonalnummer() {
return personalnummer;
}
public void setPersonalnummer(int personalnummer) {
this.personalnummer = personalnummer;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Mitarbeiter = Oberklasse
Angestellter = Unterklasse
Arbeiter = Unterklasse
Code:
Angestellter.txt
6
Klaus Hunter
1800
200
7
Otto Igel
2000
500
8
Jorg Klone
1950
150
9
Jean Apple
2400
400
10
Frank Rettung
3500
500
Code:
Arbeiter.txt
1
Peter Ganz
7.5
38
2
Julius Hallo
7.5
38
3
Johannes Gräber
7.9
37
4
Andreas Kloster
13.8
40
5
Matthias Kolt
20.1
35
Das ganze ist eine Schulaufgabe ist aber nicht so wichtig nur ne kleine Übung die ich ohne das einlesesn einer Datei programmieren könnte aber da ich keine lust habe das ganze immer wieder und wieder von vorne einzugeben, wollt ichs halt über ne Datei lösen.
Also wieso ließt er nicht bzw. wieso bekomme ich immer NULL?
Zuletzt bearbeitet: