Esame del 30/5/2012 Tecnologie Internet e Web (parte di Java

annuncio pubblicitario
Esame del 30/5/2012
Tecnologie Internet e Web (parte di Java)
Realizzare un programma Java che analizza dei file HTML. I file HTML che consideriamo possono avere solo i
seguenti tag: <html>, <body>, <p> e le rispettive chiusure. Dentro a un <p> non ci possono essere altri tag.
Ad esempio il file HTML seguente è un input possibile per il programma.
<html>
<body>
<p>Java</p>
<p>che bello
</p>
Programmare in Java
</body>
</html>
Il programma deve:
1. controllare che nel file non ci siano tag diversi da quelli indicati
2. controllare che il file sia ben formattato cioè che:
a. i tag <html>, <body> e <p> abbiano le rispettive chiusure innestate correttamente. Ad
esempio il programma deve segnalare un errore se un <p> non è chiuso o in caso di errori
di innesto: <html><body></html></body>
b. <html> contiene <body>.
c. <body> contiene dei tag <p> o del testo
d. <p> contiene testo
3. scrivere il contenuto del documento senza tag (es. “Java che bello programmare in Java”)
4. scrivere la parola che compare più spesso nel documento (es. Java)
5. (difficile) creare degli oggetti di classe Tag o Text per rappresentare il documento. Gli elementi di classe
Tag devono poter contenere una lista di altri oggetti Tag o Text per rappresentare come i tag sono
innestati. Ad esempio:
Tag html = new Tag(“html”);
Tag body = new Tag(“body”);
Tag p1 = new Tag(“p”);
Text t1 = new Text(“Java”)
Tag p2 = new Tag(“p”);
Text t2 = new Text(“che bello”)
Text t3 = new Text(“Programmare in Java”);
html.add(body); // body è dentro html
body.add(p1); // c’è un paragrafo dentro a body
body.add(p2); // c’è un altro paragrafo dentro a body
body.aff(t3); // c’è un elemento di testo dentro a body
p1.add(t1); // dentro al primo paragrafo c’è un elemento di testo
p2.add(t2); // dentro al secondo paragrafo c’è un elemento di testo
Ovviamente il programma deve funzionare con ogni file HTML in input
Scarica