public ViewSchueler(Schueler s) { this.vorname = s.Vorname; this.nachname = s.Nachname; if (s.Fehlzeit.Length >= 1) { if (s.Fehlzeit[0] != null) { this.hMo = s.Fehlzeit[0].Stunden; this.sMo = s.Fehlzeit[0].Status; } } if (s.Fehlzeit.Length >= 2) { if (s.Fehlzeit[1] != null) { this.hDi = s.Fehlzeit[1].Stunden; this.sDi = s.Fehlzeit[1].Status; } } if (s.Fehlzeit.Length >= 3) { if (s.Fehlzeit[2] != null) { this.hMi = s.Fehlzeit[2].Stunden; this.sMi = s.Fehlzeit[2].Status; } } if (s.Fehlzeit.Length >= 4) { if (s.Fehlzeit[3] != null) { this.hDo = s.Fehlzeit[3].Stunden; this.sDo = s.Fehlzeit[3].Status; } } if (s.Fehlzeit.Length >= 5) { if (s.Fehlzeit[4] != null) { this.hFr = s.Fehlzeit[4].Stunden; this.sFr = s.Fehlzeit[4].Status; } } }
public Klasse importReport(String pfadImport) { //CSV-Pfad var reader = new StreamReader(File.OpenRead(pfadImport)); List <string> listA = new List <string>(); int[] zeiten = new int[5]; int zeileCSV = 0; String[] tage = new String[5]; String[] zeile; List <Schueler> schueler = new List <Schueler>(); while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(';'); for (int i = 0; i < values.Length; i++) { if (values[i] != "") { listA.Add(values[i]); } } if (zeileCSV == 0) { tage = listA.ToArray(); daten = listA.ToArray(); listA.Clear(); } else if (zeileCSV == 1) { zeileCSV++; listA.Clear(); continue; } else if (zeileCSV >= 2 && !(listA.Count == 0)) { //Zeile mit Inhalt zeile = listA.ToArray(); int tag = 0; //Fehlzeiten Fehlzeit[] fehlzeiteSchueler = new Fehlzeit[] { null, null, null, null, null }; for (int i = 0; i < 10; i += 2) { if (Regex.IsMatch(values[i + 2], @"^\d+$")) { fehlzeiteSchueler[tag] = new Fehlzeit(tage[tag], Int32.Parse(values[i + 2]), values[i + 3]); } tag++; } //Summe der Fehlzeiten int verspaetet = 0; int offen = 0; int entschuldigt = 0; for (int i = 0; i < fehlzeiteSchueler.Length; i++) { if (fehlzeiteSchueler[i] != null) { if (fehlzeiteSchueler[i].Status.Equals("offen")) { //unendschuldigt offen += fehlzeiteSchueler[i].Stunden; } else if (fehlzeiteSchueler[i].Status.Equals("verspätet")) { //Verspätet verspaetet += fehlzeiteSchueler[i].Stunden; } else { //Entschuldigt entschuldigt += fehlzeiteSchueler[i].Stunden; } } } //Schüler init Schueler a = new Schueler(zeile[0], zeile[1], fehlzeiteSchueler, offen, entschuldigt, verspaetet); schueler.Add(a); zeileCSV++; listA.Clear(); } else { break; } zeileCSV++; } SchuelerListe = schueler.ToArray(); return(new Klasse(schueler, "", tage)); }