Sto cercando di estrapolare una parte di informazione da un codice html. Il problema è che utilizzando il metodo charAt, continua a darmi un sempre lo stesso errore
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 56
il codice è il seguente
try {
URL url = new URL("http://www.atm-mi.it/Appl_ATM/Orari/superficie1.aspx?linea=92&verso=a&cb1=1&cb2=0&lang =ita");
BufferedReader pagina = new BufferedReader(new InputStreamReader(url.openStream()));
while(true){
String download =pagina.readLine();
String nuova;
if (download==null)
break;
else
nuova=download;
int r=0;
while ((r= nuova.indexOf("COLOR: white", r)) != -1){
char c = nuova.charAt(r);
while (c !='>'){
r++;
c=nuova.charAt(r);
}
while(c!='<'){
r++;
//int charVal=c;
//System.out.println(charVal);
c=nuova.charAt(r);
int charVal=c;
System.out.print(c);
}
r++;
}
}
}catch (IOException e) { System.out.println(e); }
ho provato anche ad effettuare un ciclo che mi possa permettere di togliere i caratteri non stampabili o cmq che non dovrebbero esser presi con il chatAt, eppure mi continua a dare sempre lo stesso errore. Il ciclo che ho utilizzato per fare ciò è il seguente
while (c < (char) 33 && c > (char) 127){
r++;
c=nuova.charAt(r);
}
a questo punto non so più cosa fare è_é se avete suggerimenti o soluzioni ve ne sarei grato perchè non riesco proprio a capire come diamine si possa estrapolare l'informazione. L'informazione da prendere nella pagina è la seguente
92BOVISA FN - VIALE ISONZO
grassie a tutti anticipatamente