Aufteilen von Fehler-IndexOutOfBoundsException

Ich bin mit einem Problem festgefahren, das ich scheinbar nicht lösen kann. Beim Aufteilen sollte ich bekommen könnenID, Name, Scheck indem man es einstelltReihe [0], Reihe [1], Reihe [2]. Seltsamerweise scheint nur row [0] (id) zu funktionieren.Name, überprüfen gibt mir einen fehler. Könnte mir jemand weiter helfen?

Beispiel für Daten:

id,name,check
1,john,0
1,patrick,0
1,naruto,0

Code:

    ArrayList<String> names = new ArrayList<String>();
    try {

        DataInputStream dis = new DataInputStream(openFileInput(listLocation(listLoc)));
        BufferedReader br = new BufferedReader(new InputStreamReader(dis));
        String line;
        while ((line = br.readLine()) != null) {
             String[] row = line.split(Pattern.quote(","));
                 //names.add(row[0]); // id
                 names.add(row[1]); // name // ERROR AT THIS LINE
                 //names.add(row[2]); // check
        }
        br.close();
    }
    catch (IOException e) {
        e.printStackTrace();
    }

Fehlermeldung:

Caused by: java.lang.ArrayIndexOutOfBoundsException: length=1; index=1

Gelöst Anscheinend hatte ich am Ende der Datei einen falschen Wert (Fragezeichen). Beim Entfernen dieser Linie. Mein Code hat funktioniert (ohne Patter.quote). Vielen Dank für die schnelle Antwort. Die erste Antwort hat mir dabei geholfen, mich an die Verwendung des Protokollwerts zu erinnern, bei dem ich den "falschen Wert" sehen konnte. Mein Fehler.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage