Estou usando FileWrite para escrever em um arquivo de texto, mas tenho o seguinte problema. Como eu estou salvando como XML tenho que respeitar a tag final que no meu caso é . Resumindo, eu tenho que ler e achar a tag e escrever antes. Como eu faço para ler??
Já tentou utilizar o FileReader em conjunto com o BufferedReader?
public static String getFileContentAsText(File file) throws IOException {
if(file == null || !file.exists() || !file.isFile())
throw new FileNotFoundException(file.getAbsolutePath());
FileReader fr = null;
BufferedReader br = null;
StringBuffer sb = new StringBuffer("");
fr = new FileReader(file);
br = new BufferedReader(fr);
try {
for(String line = br.readLine(); line != null; line = br.readLine()) {
sb.append(line + "\n");
}
} catch (IOException e) {
throw new IOException("Can't read the file: " + e.getCause());
}
br.close();
fr.close();
return sb.toString();
};
Valeu pelas respostas!! Vou dar uma olhada nos dois e coloco aqui os resultados.
Consegui fazer ele ler, mas minha dúvida é como eu faço a comparação pelo if??? Seria com o método equals??
Vc quer comparar um arquivo com o outro? é isso?
Em um arquivo xml tenho que achar a tag e inserir antes dela. Então eu queria ler o arquivo e através de um if comparar e inserir o texto.
Eu gostaria de saber como posso fazer ler um arquivo texto e colocar a saida dele para uma página jsp?
Pra fazer isso, a melhor alternativa é a dica do LuizClaudio. Dê uma estudada naquele link que ele passou.
Pra fazer por if, de qq forma, vc pode usar o método indexOf(String) da classe String, que te retorna a posição onde é encontrado, no String que invoca esse método, o String que foi passado por parâmetro. Por exemplo:
String code = "<bla><bleh>ono no</bleh></bla>";
System.out.println(code.indexOf("</bleh>"));
System.out.println(code.indexOf("<bla>"));
System.out.println(code.indexOf("<foo>"));
Isso aí em cima, se executado, vai mostrar na tela:
17
0
-1
o -1 indica que não foi achado o String passado por parâmetro.
Mas acho que seja melhor vc usar o JDOM
O projeto está pronto. As pesquisas e a leitura do xml está ok, só falta salvar. Se for usar JDOM tenho que mudar tudo ou não.