Vale, el error estaba en el while, tenía que poner while((cadena = br.readLine())!=null), y yo lo tenía sin el "cadena =", porque quería que la primera no la leyera, pero claro, no pensé que cada vez que hiciera una itineración del while se saltaría una linea, y en la última antes de null, entraría, y al ponerle cadena = br.readLine() ya daría null y por eso el error
Gracias por la ayuda
Gracias por la ayuda