Hmmm, ik krijg nog steeds één compilatiefout, de bedoel is dat ik de lijsten auteur, titels en uitgeverij opsla, allé dat is niet de bedoeling maar ik wil dat ie dat doet, het is namelijk veel gemakkelijker want dan moet ik dat niet altijd hertypen, de bedoeling is dat ik dat dan later in een ander progie kan steken.
'k weet normaal gezien moet ik dat niet doen als opdracht, maar het kan nooit geen kwaad wat vooruit te doen dacht ik
Maar blijkbaar is dat toch niet zo easy als ik dacht.
Het progie werkt overigens correct zonder die drie "try's" of hoe moet ik et noemen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
| // Bronbestand : BoekenLijst.java
import java.io.*;
import javagently.*;
import java.util.*;
public class BoekenLijst {
public static void main(String[] args) throws IOException {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader in=new BufferedReader(isr);
Vector auteursLijst = new Vector();
Vector titelLijst = new Vector();
Vector uitgeverijLijst = new Vector();
try{
FileOutputStream hardeSchijf = new FileOutputStream("lijstOpgeslaan.obj");
ObjectOutputStream oo = new ObjectOutputStream(hardeSchijf);
oo.writeObject(auteursLijst);
oo.close();
}catch (IOException ie){
System.out.println("Error");
}
try{
FileInputStream hardeSchijf = new FileInputStream("lijstOpgeslaan.obj");
ObjectInputStream lijst = new ObjectInputStream(hardeSchijf);
Vector subLijstAuteur= (Vector)lijst.readObject();
subLijstAuteur = auteursLijst;
}catch (IOException ie){
System.out.println("Error");
}
String auteur="";
String titel="";
String uitgeverij="";
int positie=0;
int positie2=0;
System.out.println("Welkom op het boekie, hét programma om boekenlijsten te maken");
char menuKeuze='?';
do{
System.out.println("*****MENU*****");
System.out.println(" ");
System.out.println("<T>oevoegen van een boek");
System.out.println("<V>erwijderen van een boek");
System.out.println("<Z>oeken van een boek");
System.out.println("T<o>nen van de reeds ingevoerde boeken");
System.out.println("<A>fsluiten");
System.out.println(" ");
Text.prompt("Geef je keuze in: ");
menuKeuze = Text.readChar(in);
System.out.println("**************************************************");
switch(menuKeuze){
case 'T':{
Text.prompt("Geef de titel van het boek in:"); titel = in.readLine();
titelLijst.addElement(titel);
Text.prompt("Geef de naam van de auteur:"); auteur = in.readLine();
auteursLijst.addElement(auteur);
Text.prompt("Geef de naam van de uitgeverij:"); uitgeverij = in.readLine();
uitgeverijLijst.addElement(auteur);
break;
}
case 'V':{
System.out.println("<V>");
Text.prompt("Geef de titel van het boek in:"); titel = in.readLine();
positie = (int)(titelLijst.indexOf(titel));
if (positie<0) System.out.println("Dat boek zat nog niet in de lijst!!!");
else {
titelLijst.removeElementAt(positie);
auteursLijst.removeElementAt(positie);
uitgeverijLijst.removeElementAt(positie);
System.out.println("Het boek werd verwijderd");
}
break;
}
case 'Z':{
positie2 = 0;
Text.prompt("Geef de naam van de auteur:"); auteur = in.readLine();
positie = (int)(auteursLijst.indexOf(auteur));
if (positie<0) System.out.println("Die auteur ken ik niet!!!");
else {
do{
positie = (int)(auteursLijst.indexOf(auteur,positie2));
System.out.print("De auteur: "); System.out.println(auteursLijst.elementAt(positie)); System.out.print("De titel: "); System.out.println(titelLijst.elementAt(positie));
System.out.print("De uitgeverij: "); System.out.println(uitgeverijLijst.elementAt(positie));
System.out.println("*******************");
positie2 = positie+1;
}while (positie>0 && positie2<=auteursLijst.size());
}
break;
}
case 'o':{
if ((int)(titelLijst.size())==0) System.out.println("Er zijn geen boeken om te tonen.");
else{
for (int p=0;p<titelLijst.size();p++){
System.out.print("De auteur: "); System.out.println(auteursLijst.elementAt(p)); System.out.print("De titel: "); System.out.println(titelLijst.elementAt(p));
System.out.print("De uitgeverij: "); System.out.println(uitgeverijLijst.elementAt(p));
System.out.println("*******************");
}
}
break;
}
case 'A':{
System.out.println("Gedaan!!!"); break;
}
default: System.out.println("Je maakte een foute keuze!!!");
}
try{
FileOutputStream hardeSchijf = new FileOutputStream("lijstOpgeslaan.obj");
ObjectOutputStream oo = new ObjectOutputStream(hardeSchijf);
oo.writeObject(auteursLijst);
oo.close();
}catch (IOException ie){
System.out.println("Error");
}
}while(menuKeuze!='A');
}
} |
sorry voor de lange code
Wijziging 1:
Hé da's raar, de insprongen die ik maakte voor de overzichtelijkheid die komen niet op het forum?
Wijziging 2:
'k heb de code tags toegevoegd, nu maakt ie wel rare insprongen, in kladblok toont ie et anders ma das niet zo belangrijk.