[ roopix @ 02.02.2009. 20:50 ] @
Trebala bi mi mala pomoc oko projekta kojeg radim na faksu. Poceo sam ga raditi da ne bude da trazim da mi vi uradite :) Problem je u tome kada ucitam iz datoteke studenti.txt liniju po liniju i smjestim ih niz, izgleda dobro i radi, ali kada hocu da ispisem sve to ispisuje mi samo zadnjeg upisanog studenta onoliko puta koliko je bilo linija, tacnije koliko je bilo studenata u fajlu. ovo je kod klase student. Code: import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.io.StreamTokenizer; public class Student { static int brojIndeksa; static String ime; static String prezime; static int datumRodjenja; static int maticniBroj; static int datumUpisaStudija; static int slusaGodinu; static Student[] Studenti = new Student[50]; static int brojStudenata=0; @SuppressWarnings("static-access") public Student(int brojIndeksa, String ime, String prezime, int datumRodjenja, int maticniBroj, int datumUpisaStudija, int slusaGodinu) { this.brojIndeksa=brojIndeksa; this.ime=ime; this.prezime=prezime; this.datumRodjenja = datumRodjenja; this.maticniBroj = maticniBroj; this.datumUpisaStudija = datumUpisaStudija; this.slusaGodinu = slusaGodinu; } public static void povecajBrojStudenata() { brojStudenata++; } public static int dajBrojStudenata() { return brojStudenata; } public static void ispisiStudente() { for (int i=0; i<Student.dajBrojStudenata(); i++) { System.out.println("Broj indeksa: "+Studenti[i].dajBrojIndeksa()+" Ime: "+Studenti[i].dajIme()+" Prezime: "+Studenti[i].dajPrezime()+" Datum rodjenja: "+Studenti[i].dajDatumRodjenja()+" Maticni broj: "+Studenti[i].dajMaticniBroj()+" Datum upisa studija: "+Studenti[i].dajDatumUpisaStudija()+" Slusa godinu: "+Studenti[i].dajSlusaGodinu()); } } public static void postaviIme(String ime) { Student.ime = ime; } public static String dajIme() { return ime; } public static void postaviBrojIndeksa(int brojIndeksa) { Student.brojIndeksa = brojIndeksa; } public static int dajBrojIndeksa() { return brojIndeksa; } public static void postaviDatumRodjenja(int datumRodjenja) { Student.datumRodjenja = datumRodjenja; } public static int dajDatumRodjenja() { return datumRodjenja; } public static void postaviMaticniBroj(int maticniBroj) { Student.maticniBroj = maticniBroj; } public static int dajSlusaGodinu() { return slusaGodinu; } public static void postaviSlusaGodinu(int slusaGodinu) { Student.slusaGodinu = slusaGodinu; } public static int dajMaticniBroj() { return maticniBroj; } public static void postaviDatumUpisaStudija(int datumUpisaStudija) { Student.datumUpisaStudija = datumUpisaStudija; } public static int dajDatumUpisaStudija() { return datumUpisaStudija; } public static void postaviPrezime(String prezime) { Student.prezime = prezime; } public static String dajPrezime() { return prezime; } } a ovo je iz main klase Code: import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.io.StreamTokenizer; public class GlavniProgram extends Student { public GlavniProgram(int brojIndeksa, String ime, String prezime, int datumRodjenja, int maticniBroj, int datumUpisaStudija, int slusaGodinu) { super(brojIndeksa, ime, prezime, datumRodjenja, maticniBroj, datumUpisaStudija, slusaGodinu); } public static void procitajStudente() { try{ BufferedReader studenti = new BufferedReader(new FileReader("studenti.txt")); StreamTokenizer in = new StreamTokenizer(studenti); in.eolIsSignificant(true); while(in.ttype != StreamTokenizer.TT_EOF) { in.nextToken(); postaviBrojIndeksa((int)in.nval); in.nextToken(); postaviIme(in.sval); in.nextToken(); postaviPrezime(in.sval); in.nextToken(); postaviDatumRodjenja((int)in.nval); in.nextToken(); postaviMaticniBroj((int)in.nval); in.nextToken(); postaviDatumUpisaStudija((int)in.nval); in.nextToken(); postaviSlusaGodinu((int)in.nval); in.nextToken(); Studenti[brojStudenata] = new Student(dajBrojIndeksa(), dajIme(), dajPrezime(), dajDatumRodjenja(), dajMaticniBroj(), dajDatumUpisaStudija(), dajSlusaGodinu()); povecajBrojStudenata(); }studenti.close(); }catch(IOException e) { System.err.println(e); } } public static void main(String[] args) { procitajStudente(); Student.ispisiStudente(); } } |