Hallo Leute
ich habe ein Programm:
Und er benutzt die Klasse Person:
Leider kommt beim Kompilieren von der KundenAuslesen.java mehrere Fehler:
Was muss ich tun, damit der Fehler verschwindet?
ich habe ein Programm:
Code:
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Vector;
public class KundenAuslesen {
private Vector<String> zeilen;
private String datei;
private int hoechsteid;
private String tmp;
public KundenAuslesen(String datei) {
zeilen = new Vector<String>();
this.datei = datei;
hoechsteid = 0;
tmp = "";
}
public int getPersonenAnzahl() {
int anzahl = 0; // Zaehler
BufferedReader br;
String zeile = "";
try {
br = new BufferedReader(new FileReader(datei));
while((zeile = br.readLine()) != null) {
if(zeile.startsWith("[")) {
anzahl++;
//continue;
tmp = zeile.replace("[", "");
tmp = tmp.replace("]", "");
if (Integer.parseInt(tmp) > hoechsteid)
{
hoechsteid = Integer.parseInt(tmp);
}
}
zeilen.add(zeile);
}
br.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return anzahl;
}
public Person[] getPersonen() {
getPersonenAnzahl();
Person[] pers = new Person[hoechsteid+1];
Person p = new Person();
int cnt = 0;
for(String zeile: zeilen) {
if (cnt == 0) {
p.setID(Integer.parseInt(zeile.replaceAll("\\W", "")));
cnt++;
continue;
}
if (cnt == 1) {
p.setName(zeile.substring(1));
cnt++;
continue;
}
if (cnt == 2) {
String tmp2 = zeile.substring(1);
p.setMoney(Double.parseDouble(tmp2.replace(",", ".")));
cnt++;
continue;
}
if (cnt == 3) {
p.setPassword(zeile.substring(1));
cnt = 0;
}
pers[p.getId()] = new Person(p.getId(), p.getName(), p.getMoney(), p.getPassword(), false);
}
return pers;
}
public static void main(String[] args) {
KundenAuslesen da = new KundenAuslesen("datei.txt");
Person[] personen = da.getPersonen();
//KundenSpeichern ks = new KundenSpeichern("datei2.txt", personen.length, da.getPersonen());
//ks.speichern();
}
}
Und er benutzt die Klasse Person:
Code:
//package hellghost;
public class Person {
private int idnr;
private String name;
private double money;
private String password;
private boolean del;
public Person() {
this.idnr = 0;
this.name = "";
this.money = 0;
this.password = "";
this.del = false;
}
public Person(int idnr, String name, double money, String password, boolean del) {
this.idnr = idnr;
this.name = name;
this.money = money;
this.password = password;
this.del = del;
}
public int getId() {
return idnr;
}
public void setID(int idnr) {
this.idnr = idnr;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public boolean getDel() {
return del;
}
public void setDel(boolean del) {
this.del = del;
}
}
Leider kommt beim Kompilieren von der KundenAuslesen.java mehrere Fehler:
Compiliere E:\Schule\doppelquali\Java\Daten auslesen\KundenAuslesen.java mit Java-Compiler
KundenAuslesen.java:50: cannot access Person
bad class file: .\Person.class
class file has wrong version 50.0, should be 49.0
Please remove or make sure it appears in the correct subdirectory of the classpath.
public Person[] getPersonen() {
^
1 error
Was muss ich tun, damit der Fehler verschwindet?