Estou tentando montar um código em java que tem por objetivo, nesse método, cadastrar cliente e para isso primeiro estou carregando o conteúdo do arquivos txt
que são dados de cliente que ja foram cadastrados anteriormente, para uma ArrayList e logo após estou adicionando a ArrayList os dados do cliente que quero cadastrar na ação
mais justamente na hora de carregar os dados de cliente que estão no arquivo txt não está ocorrendo, e quando debugei o algoritmo sequer entro no while((valorLinha = leitorDados.readLine()) != null), estou começando agora nessa praia de programação java e não estou entendo esse erro. se alguem puder me ajudar ficaria grato, se for o caso eu passo o resto do algoritmo inteiro, obrigado desde já.
public final void cadastrarCliente() throws IOException{
boolean continua=true;
String nome="",cep="",profissao="",senha="";
int idade=0,nConta=0;
nome = JOptionPane.showInputDialog("Digite o nome do cliente");
cep = JOptionPane.showInputDialog("Digite o cep");
profissao = JOptionPane.showInputDialog("Digite a profissão");
idade = Integer.parseInt(JOptionPane.showInputDialog("Digite a idade"));
nConta = Integer.parseInt(JOptionPane.showInputDialog("Digite o número da conta para o cliente"));
senha = JOptionPane.showInputDialog("Digite a senha");
Charset utf8 = StandardCharsets.UTF_8;
Path caminhoDadosCliente = Paths.get("C:/Banco/DadosCliente.txt");
BufferedWriter escritorDados = Files.newBufferedWriter(caminhoDadosCliente, utf8);
BufferedReader leitorDados = Files.newBufferedReader(caminhoDadosCliente, utf8);
ArrayList <String> dadosCliente = new ArrayList<>();
if (Files.exists(caminhoDadosCliente)==true){
String valorLinha = null;
while((valorLinha = leitorDados.readLine()) != null){
dadosCliente.add(valorLinha);
System.out.println(valorLinha);
}
}//final if
dadosCliente.add(nome);
dadosCliente.add(cep);
dadosCliente.add(profissao);
dadosCliente.add(String.valueOf(idade));
dadosCliente.add(String.valueOf(nConta));
dadosCliente.add(senha);
int i=0;
while(i < dadosCliente.size()){
escritorDados.write(dadosCliente.get(i) + "\n");
i++;
}
escritorDados.flush();
escritorDados.close();
}
}