Jump to content
Sign in to follow this  
sent

Stream update

Recommended Posts

sent

Boa noite,

tenho uma stream que serve par fazer o log do meu programa,

mas como eu adiciono uma linha no fim sem apagar o texto todo para traz?

o que eu tenho é isto:

PrintWriter pw = new PrintWriter("log.txt");
pw.println(msg);
pw.close();

Cumprimentos :cheesygrin:

Share this post


Link to post
Share on other sites
sent

PrintWriter pw = new PrintWriter("log.txt");
pw.println(msg);
pw.close();

o "msg" é a mensagem que irei inserir,  e eu quero fechar sempre o log cada vez que insiro uma mensagem pois se acontecer alguma coisa inesperada ao programa, ter acesso ao log.

O problema é que que quando faço PrintWriter pw = new PrintWriter("log.txt"); ele faz o flush do ficheiro, coisa que não quero - não sei se me faço entender.

Share this post


Link to post
Share on other sites
Baderous

Se fizeres um flush() a seguir a cada println, asseguras que o ficheiro é escrito.

Edit: também podes experimentar abrir uma FileOutputStream em modo append, o que garante que cada nova escrita é feita no fim do ficheiro:

PrintWriter pw = new PrintWriter(new FileOutputStream(new File("log.txt"),true));

Share this post


Link to post
Share on other sites
sent

PrintWriter pw = new PrintWriter(new FileOutputStream(new File("log.txt"),true));

Era isso que precisava, já funciona :cheesygrin:

Obrigado

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.