Diferença entre FileWriter, PrintWriter e BufferedWriter
Olá !!
Existe alguma diferença, além da quantidade de código, nos exemplos abaixo ?
Obrigado pela atenção
FileWriter fw = new FileWriter("/teste.txt");
BufferedWriter bw = new BufferedWriter(fw);
bw.write("teste");
bw.flush();
bw.close();
PrintWriter pw = new PrintWriter("/teste.txt");
BufferedWriter bw = new BufferedWriter(pw);
bw.write("teste");
bw.flush();
bw.close();
FileWriter fw = new FileWriter("/teste.txt");
PrintWriter pw = new PrintWriter(fw);
BufferedWriter bw = new BufferedWriter(pw);
bw.write("teste");
bw.flush();
bw.close();
File f = new File("/teste.txt");
FileWriter fw = new FileWriter(f);
PrintWriter pw = new PrintWriter(fw);
BufferedWriter bw = new BufferedWriter(pw);
bw.write("teste");
bw.flush();
bw.close();
File f = new File("/teste.txt");
PrintWriter pw = new PrintWriter(f);
BufferedWriter bw = new BufferedWriter(pw);
bw.write("teste");
bw.flush();
bw.close();
File f = new File("/teste.txt");
FileWriter fw = new FileWriter(f);
BufferedWriter bw = new BufferedWriter(fw);
bw.write("teste");
bw.flush();
bw.close();
Ffelipe
Curtidas 0
Respostas
Ricardo Staroski
09/04/2009
No exemplo acima a única diferença é realmente a quantidade de código, pois em todos os casos você só está utilizando o método [b]write(String)[/b] definido na classe [b]java.io.Writer[/b]
Para ver o propósito bem como alguns métodos específicos de cada uma dessas classes, consulte a documentação da API.
GOSTEI 0
Alexandre Viriato
09/04/2009
Essas:
[url=http://java.sun.com/j2se/1.4.2/docs/api/java/io/FileWriter.html]FileWriter[/url]
[url=http://java.sun.com/j2se/1.4.2/docs/api/java/io/PrintWriter.html]PrintWriter[/url]
[url=http://java.sun.com/j2se/1.4.2/docs/api/java/io/BufferedWriter.html]BufferedWriter[/url]
GOSTEI 0
Carlos Heuberger
09/04/2009
[quote="ffelipe"]Olá !!
Existe alguma diferença, além da quantidade de código, nos exemplos abaixo ?
...
Oi,
eu acho que vai ter diferença toda vez que usar um PrintWriter, pois o PrintWriter irá [i]engolir[/i] uma eventual IOException. Mesmo usando o write(String) do Writer, esse chama o método write(String, int, int) da classe em questão, que no fim irá chamar um write do objeto (Writer) passado no construtor. Os métodos do PrintWriter não jogam IOException, então se ocorrer um erro durante a escrita do arquivo, esse erro não será passado ao BufferedWriter.
[]]
GOSTEI 0