Gravar arquivo txt

Olá Pessoal!

Estou tentando gravar mensagens em um arquivo txt, mas não estou conseguindo.
Eu tenho 2 classes, a classe1 instancia o metodo escrevermensagens da classe2 passando uma string como parametro.
O metodo EscreverMensagem abre o arquivo, salva e fecha o arquivo.
Estou utilizando a classe ObjectOutputStream
Resumindo os Metodos são:
OpenFile:
ObjectOutputStream output= new ObjectOutputStream (
new FileOutputStream (filename, true))

Record: output.writeObject ( mensagem )
output.flush();

Só que as vezes funcionava, mas agora não funciona!!! ele abre o arquivo e escreve um monte de maluquice, tavez esteja escrevendo binário!
Pra usar o write object deve se usar o Serializable na classe que o object instancia, em qual eu uso?
E pq num funciona, onde estou errando!?
Se puderem me ajudar…

Brigada

O parâmetro “mensagem” é do tipo String?

eu uso assim:
try{
String fileName = “arquivo.txt”;
FileWriter writer = new FileWriter(fileName);
BufferedWriter escritor = new BufferedWriter(reader);
escritor.writeln(“mensagem”);
escritor.close();
writer.close();
} catch (Exception e){e.printStackTrace();}

espero que ajude.

[]'s

Artur Sampaio

Sim a mensagem é do tipo string!
Eu já tinha pensado em usar o FileWriter, mas tava querendo tentar com OutputStream!

Brigada
Valéria

Lellinfo,

Vc pode usar o log4j.jar

logging.apache.org/log4j/docs/download.html

Lellinfo,

Vc pode usar o log4j.jar

logging.apache.org/log4j/docs/download.html

Experimente:

import java.io.*;

public class Exemplo015
{
public static void main(String args[])
{ try
{ String fileName = “c:\arquivo.txt”;
FileWriter writer = new FileWriter(fileName);
BufferedWriter escritor = new BufferedWriter(writer);
escritor.write(“mensagem”);
escritor.close();
writer.close();
}
catch (Exception e)
{ e.printStackTrace();
}
}
}
:smiley:

Valeu galera!

Eu implementei usando o PrintWriter e o BufferedWriter, o único problema é que a classe BufferedWriter não aceita o writeln, pq no meu arquivo txt vou precisar de quebra de linha, alguém sabe como posso fazer?

Brigadão

Use “\n”
:smiley: falow

Obrigada galera!

Eu usei escritor.newline(); E já está funcionando!!!
Eu já havia tentado '\n 'mas num funcionou!

Valeu!