[Resolvido] Arquivos

Boa noite!

Estou tentando fazer um programa onde o usuário digita algumas linhas através da entrada padrão e estas linhas são gravadas uma a uma em um arquivo chamado log.txt, consigo visualizar o que foi digitado no arquivo, porém preciso que o programa finalize quando a linha digitada for em branco. Poderiam me ajudar? Abaixo o código:

import java.io.*;
import javax.swing.JOptionPane;

public class EntradaTexto {
	
	  
	   public void  GravarTexto (int [] vet, File file){
		   
	         try{
	         BufferedWriter buffer = new BufferedWriter(new FileWriter (file));
	         String texto = "";
	         
	         for(int i = 0; i < 5; i++){
	         texto = JOptionPane.showInputDialog("Digite algo no teclado");
	         buffer.write(texto+" ");
	         buffer.newLine();
	       }
	        
	       buffer.close();
	 
	       JOptionPane.showMessageDialog(null,"Arquivo gravado com " +
	               "sucesso","Concluído",JOptionPane.INFORMATION_MESSAGE);
	        }catch (IOException e){
	           JOptionPane.showMessageDialog(null,e.getMessage(),
	               "Atenção",JOptionPane.WARNING_MESSAGE);
	        }
	   }
	    public static void main(String args[]) throws IOException{
	        EntradaTexto grava=new EntradaTexto();
	        File file = new  File("C:\log.txt");
	         int [] texto = null;
			grava.GravarTexto(texto, file);
	    }
	}

Desde já, obrigado.

Troque isso: for(int i = 0; i < 5; i++){ texto = JOptionPane.showInputDialog("Digite algo no teclado"); buffer.write(texto+" "); buffer.newLine(); }
Por isso: do { texto = JOptionPane.showInputDialog("Digite algo no teclado"); buffer.write(texto + " "); buffer.newLine(); } while (!texto.equals(""));
Enquanto a variavel texto for diferente de vazio ele vai ficar no loop.

:oops: Foi mal, duplicou a mensagem a cima :oops:

Boa Noite!

Pode fazer assim:[code]import java.io.*;
import javax.swing.JOptionPane;

public class EntradaTexto {
BufferedWriter buffer;
String texto = “”;

public void  GravarTexto (int [] vet, File file){
	   
	try{
		buffer = new BufferedWriter(new FileWriter(file));

		pegaTexto();

		buffer.close();
 
		JOptionPane.showMessageDialog(null,"Arquivo gravado com " +
			"sucesso","Concluído",JOptionPane.INFORMATION_MESSAGE);
	}catch (IOException e){
		JOptionPane.showMessageDialog(null,e.getMessage(),
		"Atenção",JOptionPane.WARNING_MESSAGE);
	}
}
public void pegaTexto() throws IOException{
	texto = "";
	texto = JOptionPane.showInputDialog("Digite algo no teclado");
	if(!texto.equals("")){
		buffer.write(texto+" ");
		buffer.newLine();
		pegaTexto();
	}else{
		buffer.close();
		System.exit(0);
	}
}
public static void main(String args[]) throws IOException{
	EntradaTexto grava=new EntradaTexto();
	File file = new  File("C:\log.txt");
	int [] texto = null;
	grava.GravarTexto(texto, file);
}

}[/code]

É isso mesmo que você quer fazer?

Abraço!

Bom dia galera!
Obrigado pela ajuda…funcionou perfeitamente!!!

[quote=ezbueno]Bom dia galera!
Obrigado pela ajuda…funcionou perfeitamente!!![/quote]

Show de bola!
Só não esqueça de quando seu problema for resolvido, editar o tópico da sua mensagem adicionado ao final do tópico [Resolvido].
Assim, evita que pessoas acessem seu tópico para ajudar, sendo que o mesmo já está resolvido, como foi o meu caso :smiley:

Abraços!!!

[quote=ezbueno]Bom dia galera!
Obrigado pela ajuda…funcionou perfeitamente!!![/quote]
[Resolvido]

[quote=ezbueno][quote=ezbueno]Vlw galera!
Obrigado pela ajuda…funcionou perfeitamente!!![/quote]
[Resolvido][/quote]

Ok Nel…obrigado por me avisar!

Abraços

Amigo, boa noite!

Para identificar seu tópico como [RESOLVIDO] você tem que EDITAR (olhe no canto superior direito da postagem) a sua primeira postagem. Quando abrir a tela de edição você acrescenta [RESOLVIDO] no início do assunto.

Ele vai ficar assim: “[RESOLVIDO] Arquivos”.

Abraço!

Boa noite, Vingdel!
Obrigado.

Abraços