Pessoal boa noite.
Eu estou fazendo um programa que salva informações e depois as lê a partir do arquivo gerado no diretório. A parte de salvar funcionou mas eu não estou conseguindo ler os dados do arquivo que foi gerado. FileReader leitor = new FileReader("src\\br\\com\\teste1\\arquivo.xml");
BufferedReader entrada = new BufferedReader(leitor);Dúvida como eu posso transferir toda a informação que está no arquivo para uma variavel do tipo String?String lista= xStream.toXML(entrada.read()); // Não funcionou
FileReader BufferedReader
4 Respostas
Se você quer ler o XML deve usar o método fromXML(). Mas ele vai te devolver um objeto da classe que você transformou em XML.
Da uma olhada nesse tutorial: Manipulando Arquivo XML ? Parte III: XStream
O artigo é bom mas infelizmente não resolve o meu caso veja o código.
int cont1 = 0;
try {
FileReader leitor = new FileReader("src\\br\\com\\teste1\\banco.xml");
BufferedReader entrada = new BufferedReader(leitor);
String linha;
String listaXML = xStream.toXML(entrada.read()); // esse é o trecho que estou tentando resolver quero passar o arquivo banco.xml para a String listaXML //
while ((linha = entrada.readLine()) != null) {
banco = (List) xStream.fromXML(listaXML);
System.out.println("\nleitura = " + banco.get(cont1).getEmail() + " " + banco.get(cont1).getId());
}
} catch (IOException e) {
System.out.println("Erro de leitura." + e.getMessage());
}Como eu faço para passar o texto do banco.xml para a String listaXML?
Infelizmente a biblioteca XStream não trabalha do modo que você quer.
Ela trabalha com classes, você cria uma classe que representará seu xml, usa um objeto dessa classe para criar e ler o xml.
Creio que você tem 2 maneiras de ler esse arquivo:
1- Utilizando como o amigo acima disse, a classe que representa o XML.
2- Lendo todo o arquivo, então você da um “.toString()”. Você vai ter o xml todo em uma variavel string.