/* * ################################################################################ */ public static clsFragenKatalog getTestFragenKatalog() { clsFragenKatalog test_fragen_katalog = new clsFragenKatalog(); clsFrage aktuelle_frage = null; test_fragen_katalog.setDateiName("TestFragenkatalog1.xls"); int fragen_nr = 1; int fragen_anzahl = 2; int fragen_zaehler = 1; while (fragen_zaehler <= fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID1_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 1 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 A"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, true, "A")); aktuelle_frage.setAntwortB(getTestAntwort(true, 2, false, "B")); aktuelle_frage.setAntwortC(getTestAntwort(true, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(true, 4, false, "D")); aktuelle_frage.setAntwortE(getTestAntwort(fragen_zaehler > 1, 5, false, "E")); aktuelle_frage.setAntwortF(getTestAntwort(fragen_zaehler > 1, 6, false, "F")); aktuelle_frage.setAntwortH(getTestAntwort(fragen_zaehler > 1, 7, false, "G")); aktuelle_frage.setAntwortG(getTestAntwort(fragen_zaehler > 1, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 7; fragen_zaehler = 1; while (fragen_zaehler <= fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID2_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 2 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 B"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, true, "A")); aktuelle_frage.setAntwortB(getTestAntwort(true, 2, false, "B")); aktuelle_frage.setAntwortC(getTestAntwort(fragen_zaehler >= 2, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(fragen_zaehler >= 3, 4, false, "D")); aktuelle_frage.setAntwortE(getTestAntwort(fragen_zaehler >= 4, 5, false, "E")); aktuelle_frage.setAntwortF(getTestAntwort(fragen_zaehler >= 5, 6, false, "F")); aktuelle_frage.setAntwortH(getTestAntwort(fragen_zaehler >= 6, 7, false, "G")); aktuelle_frage.setAntwortG(getTestAntwort(fragen_zaehler >= 7, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 6; fragen_zaehler = 1; while (fragen_zaehler <= fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID2_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 2 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 B"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, true, "A")); aktuelle_frage.setAntwortB(getTestAntwort(true, 2, false, "B")); aktuelle_frage.setAntwortC(getTestAntwort(fragen_zaehler >= 2, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(fragen_zaehler >= 3, 4, false, "D")); aktuelle_frage.setAntwortE(getTestAntwort(fragen_zaehler >= 4, 5, false, "E")); aktuelle_frage.setAntwortF(getTestAntwort(fragen_zaehler >= 5, 6, false, "F")); aktuelle_frage.setAntwortH(getTestAntwort(fragen_zaehler >= 6, 7, false, "G")); aktuelle_frage.setAntwortG(getTestAntwort(true, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 4; fragen_zaehler = 1; while (fragen_zaehler <= fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID2_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 2 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 B"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, true, "A")); aktuelle_frage.setAntwortB(getTestAntwort(true, 2, false, "B")); aktuelle_frage.setAntwortC(getTestAntwort(fragen_zaehler >= 4, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(fragen_zaehler >= 3, 4, false, "D")); aktuelle_frage.setAntwortE(getTestAntwort(fragen_zaehler >= 2, 5, false, "E")); aktuelle_frage.setAntwortF(getTestAntwort(fragen_zaehler >= 3, 6, false, "F")); aktuelle_frage.setAntwortH(getTestAntwort(fragen_zaehler >= 4, 7, false, "G")); aktuelle_frage.setAntwortG(getTestAntwort(true, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 2; fragen_zaehler = 0; while (fragen_zaehler < fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID3_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 3 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 C"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, false, "A")); aktuelle_frage.setAntwortC(getTestAntwort(true, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(true, 4, true, "D")); aktuelle_frage.setAntwortF(getTestAntwort(true, 6, false, "F")); aktuelle_frage.setAntwortG(getTestAntwort(true, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 2; fragen_zaehler = 0; while (fragen_zaehler < fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID4_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 4 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 D"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, false, "A")); aktuelle_frage.setAntwortC(getTestAntwort(true, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(true, 2, true, "B")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 2; fragen_zaehler = 0; while (fragen_zaehler < fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID5_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 5 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 2 E"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, false, "A")); aktuelle_frage.setAntwortC(getTestAntwort(true, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(true, 4, true, "D")); aktuelle_frage.setAntwortF(getTestAntwort(true, 6, false, "F")); aktuelle_frage.setAntwortH(getTestAntwort(true, 7, true, "G")); aktuelle_frage.setAntwortG(getTestAntwort(true, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } fragen_anzahl = 2; fragen_zaehler = 0; while (fragen_zaehler < fragen_anzahl) { aktuelle_frage = new clsFrage(); aktuelle_frage.setId("ID6_" + fragen_zaehler + "_" + fragen_nr); aktuelle_frage.setNummer("" + fragen_nr); aktuelle_frage.setText1("Fragenblock 6 Nr. " + fragen_zaehler + " von " + fragen_anzahl); aktuelle_frage.setText2("Fragentext 6 E"); aktuelle_frage.setAntwortA(getTestAntwort(true, 1, true, "A")); aktuelle_frage.setAntwortB(getTestAntwort(true, 2, false, "B")); aktuelle_frage.setAntwortC(getTestAntwort(true, 3, false, "C")); aktuelle_frage.setAntwortD(getTestAntwort(true, 4, true, "D")); aktuelle_frage.setAntwortE(getTestAntwort(true, 5, false, "E")); aktuelle_frage.setAntwortH(getTestAntwort(true, 7, true, "G")); aktuelle_frage.setAntwortG(getTestAntwort(true, 8, false, "H")); aktuelle_frage.setText2("Anzahl Antworten: " + aktuelle_frage.getAnzahlVorhandeneAntworten() + " korrekt " + aktuelle_frage.getAnzahlKorrekteAntworten() + " falsch " + aktuelle_frage.getAnzahlFalscheAntworten()); test_fragen_katalog.addFrage(aktuelle_frage); fragen_zaehler++; fragen_nr++; } return(test_fragen_katalog); }
/* * PARAMETER: pXmlDateiName = Pfad und Dateiname auf die zu parsende XML-Datei * PARAMETER: pFragenKatalog = der Fragenkatalog, in welchem die Fragen gespeichert werden sollen * * RETURN : TRUE sofern die Datei gelesen und geparst werden konnte, sonst false */ public bool startImportXmlDatei(String pXMLDatei, clsFragenKatalog pFragenKatalog) { bool knz_xml_datei_geparst = false; int xml_node_zaehler = 0; String xml_datei_inhalt = ""; String akt_root = ""; /* * Pruefung: Instanz fuer die Speicherung der Fragen vorhanden ? * * Ist keine Speicherinstanzt uebergeben, bekommt der Aufrufer FALSE zurueck. */ if (pFragenKatalog == null) { // Keine Instanz fuer die Speicherung vorhanden return(false); } /* * Dateiinhalt der XML-Datei in die Variable xml_datei_inhalt laden. */ xml_datei_inhalt = getXmlDateiInhalt(pXMLDatei); pFragenKatalog.setDateiName(pXMLDatei); /* * Pruefung: Konnte die XML-Datei geladen werden? * Wenn die XML-Datei nicht geladen werden konnte, gibt es einen Leerstring zurueck. * * Die Datei kann nur dann verarbeitet werden, wenn es einen Dateiinhalt zum * verarbeiten gibt. */ if (xml_datei_inhalt != "") { /* * Den Klammerzaehler auf 1 stellen. */ xml_node_zaehler = 1; /* * Erste XML-Klammern "FRAGE" ermitteln. */ akt_root = getTagString(xml_datei_inhalt, XML_TAG_FRAGE, xml_node_zaehler); /* * While-Schleife * Die While-Schleife laeuft solange wie: * ... es noch XML-Klammern gibt, die Variable "akt_root" kein Leerstring ist. * ... der Index-Zaehler noch nicht die Maximalgrenze der einzulesenden Objekte erreicht hat. */ while ((akt_root != "") && (xml_node_zaehler < MAX_ANZAHL_XML_KLAMMER_LESEN)) { /* * Aufruf der Parse-Funktion fuer ein Element der Klasse "clsFrage". * Die Ergenibsinstanz wird dem Vektor hinzugefuegt. */ pFragenKatalog.addFrage(parseClsFrage(akt_root)); /* * Index-Zaehler um 1 erhoehen */ xml_node_zaehler++; /* * Naechste XML-Klammer "FRAGE" holen. */ akt_root = getTagString(xml_datei_inhalt, XML_TAG_FRAGE, xml_node_zaehler); } knz_xml_datei_geparst = true; } else { /* * Fehlerfall: XML-Datei konnte nicht geparst werden. */ knz_xml_datei_geparst = false; } return(knz_xml_datei_geparst); }