Socorro java

try {
            // declara a variavel para ler dados do arquivo
            BufferedReader bufferLeitura;
            // abre o arquivo para leitura 
            bufferLeitura = new BufferedReader(new FileReader("SA-SA.txt"));
            System.out.println("Arquivo foi aberto para leitura!");
            // obtem a primeira linha do arquivo
            String linhaLida = bufferLeitura.readLine();
            // enquanto a linha do arquivo nao for vazia 
            while (linhaLida != null) {
                String campos[] = linhaLida.split(";");

                System.out.println(campos[0] + " " + campos[1] + " " + campos[2]); // exibe o conteudo do arquivo , apenas campos [0] e [1]

                
                linhaLida = bufferLeitura.readLine();

            }
            bufferLeitura.close();
            System.out.println("Dados lidos. O arquivo foi fechado.");
        } catch (IOException e) {

            System.out.println("Ocorreu um erro durante a abertura ou leitura do arquivo! " + e.getMessage());
        }

    }
}

Ola pessoal estou fazendo um programa simples , para exibir informações de um arquivo txt . O problema é que aparece esses erros, e não faço do que significa . Me ajudem please .

ERRO 1

Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 1
at javaapplication21.Projeto.main(Projeto.java:38)
C:\Users\Braya Inacio\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1
FALHA NA CONSTRUÇÃO (tempo total: 0 segundos)

ERRO 2

at javaapplication21.Projeto.main(Projeto.java:3816:16 16:22 16:28

Este erro java.lang.ArrayIndexOutOfBoundsException ocorre quando você tenta acessar uma posição de um array que não existe,

Erro deve estar aqui:

System.out.println(campos[0] + " " + campos[1] + " " + campos[2]);

verifica se seu array não é vazio e maior que 3, exemplo:

if(campos != null && campos.length >= 3){
   //se for verdadeiro você será capaz de acessar os indices que pretende com a linha abaixo 
System.out.println(campos[0] + " " + campos[1] + " " + campos[2]);
}

Isso não é uma boa prática, você deveria usar uma laço para percorrer o array.

Você pode fazer simplesmente fazer assim:

System.out.println(Array.asList( campos ));

//java
import java.util.*;
import java.lang.*;
import java.io.*;
 
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
	public static void main (String[] args) throws java.lang.Exception
	{
		String array[] = new String[] { "foo", "bar", "baz"};
 
		System.out.println(Arrays.asList(array)); /* Arrays came from java.util package */
	}
}
2 curtidas

Coloque títulos que condizem com seu problema, vc se ajuda e ajuda os outros.
Ninguém tem que ficar entrando no seu tópico para saber do seu problema, já que o mesmo poderia ficar no título.