[Resolvido]Escrever no bloco de notas

5 respostas
F

Boas Pessoal

Eu estava a pensar em criar um programa em que tudo que escrevesse-mos na textField iria para um bloco de notas.

Mas como sou novo de java tive a ver umas lições de I/O etc.
Consegui criar um programa em que a linha que escrevemos na consola vai para o bloco de notas.

import java.util.Formatter;
import java.util.Scanner;

public class FileWritwe {

	
	private Formatter x;
	Scanner input = new Scanner(System.in);

	public void openFile()
	{
		try{
			
			x = new Formatter("C:\\Users\\Fabio\\filwrite.txt");
			
		}catch(Exception e) {System.out.println("error");
		
		
	}
	
	
}
	
	public void wrteText()
	{
		String o;
		
		System.out.println("Write something here");
		o = input.nextLine();
		
		
		x.format("\n%s", o);
		
	}
	
	public void closeFile()
	{
		x.close();
		
		
		
	}
	
	public static  void main (String args[])
	{
		FileWritwe f = new FileWritwe();
		f.openFile();
		f.wrteText();
		f.closeFile();
		
		
	}
	
	
	
}

Mas o problema é que se eu executar de novo o programa, ele vai apagar tudo do bloco de notas.
Por causa desta parte do código penso eu

x = new Formatter("C:\\Users\\Fabio\\filwrite.txt");

Eu gostava de saber se alguma maneira de executar o programa novamente e ele não apagar o que está escrito no bloco de notas, e a nova linha que vou escrever irá aparecer debaixo da outra linha escrita(bloco de notas).

5 Respostas

lucasportela

Eu geralmente utilizo:

FileWriter writer = new FileWriter("c:\\teste.txt",true);

onde o segundo parametro booleano, diz se será append ou não, ou seja, se você quer acrescentar o texto.

F

lucasportela:
Eu geralmente utilizo:

FileWriter writer = new FileWriter("c:\\teste.txt",true);

onde o segundo parametro booleano, diz se será append ou não, ou seja, se você quer acrescentar o texto.

Mas se adicionar esse código dá erro, obriga-me a criar um construtor.

G

Na utilização do FileWriter, a resposta dos nossos amigos é certeira: usar o true como segundo parâmetro faz com que o texto seja adicionado ao fim do arquivo. Depois vc pode usar PrintWriter outx = new PrintWriter(obj_arquivo) e depois só outx.println(“texto”)

lucasportela

Exemplo:

FileWriter escreve = new FileWriter("C:\\teste.txt", true);
escreve.append("Estou escrevendo no arquivo...\n");
escreve.append("agora estou na 2ª linha do arquivo.");
escreve.append(" Continuo na mesmas linha, mas agora quero fechar o arquivo.");
escreve.close();
F

Lucas obrigado pele exemplo. Funcionou o problema é que ele escreve no bloco de notas sempre na mesma linha.

Criado 15 de setembro de 2011
Ultima resposta 15 de set. de 2011
Respostas 5
Participantes 3