Usando uma variavel para definir o nome do arquivo

Olá a todos.

Eu preciso gravar em arquivos TXT informações digitadas pelo usuário.
Até aí sem problema. Gravo arquivos tranquilo.
Estou fazendo da seguinte forma:

[code] try {
//Gravando no arquivo
File arquivo;
arquivo = new File(“Arquivo.txt”);
FileOutputStream fos = new FileOutputStream(arquivo);
String texto = “LINHA NUMERO UM”;
fos.write(texto.getBytes());
texto = “\nLINHA NUMERO DOIS”;

     fos.write(texto.getBytes());
     fos.close();

     // Lendo do arquivo
     arquivo = new File("arquivo.txt");
     FileInputStream fis = new FileInputStream(arquivo);

     int ln;
     while ( (ln = fis.read()) != -1 ) {
        System.out.print( (char)ln );
     }

     fis.close();
  }[/code]

O problema, é que agora eu preciso que o usuário informe o nome do arquivo a ser gravado.
Algo do tipo:

Scanner leia = New Scanner("System.in");
System.out.println("Digite o nome do arquivo: ");
nomearquivo = leia.next();

Como eu faço pra usar o valor armazenado na variavel “nomearquivo” para ser o nome do arquivo salvo em .TXT??

Obrigado

Fala cara, blza?

Pegue o nome digitado pelo usuário e faça um concat para outra variável adicionando .txt

String n = null; nomearquivo = leia.nextLine(); n = nomearquivo.concat(".txt");
Daí é só usar a variável n para pesquisar o arquivo.

Abraço

[quote=Thiago Luis]Fala cara, blza?

Pegue o nome digitado pelo usuário e faça um concat para outra variável adicionando .txt

String n = null;
nomearquivo = leia.nextLine(); 
n = nomearquivo.concat(".txt");[/code]
Daí é só usar a variável [i]n[/i] para pesquisar o arquivo.

Abraço
[/quote]


Muito boM!!! Agora eu tenho o nome que o usuario digitar. Fantastico.
Achei que era mais complicado. Vou dar uma lida na documentação!
 :D  :D  :D  :D  :D  :D  :D  :D  :D  :D  :D 
Mas agora me deparei com outro problema. Como eu utilizo a variavel N na gravação e leitura?

Por exemplo:

[code]try {
          //Gravando no arquivo
    	 File arquivo;
    	 arquivo = new File("Arquivo.txt");
         FileOutputStream fos = new FileOutputStream(arquivo);
         String texto = "LINHA NUMERO UM";
         fos.write(texto.getBytes());
         texto = "\nLINHA NUMERO DOIS";
         
         fos.write(texto.getBytes());
         fos.close()

Se eu coloco a variavel N nos parametros de File,dá erro.
Como eu mostro pra ele que ele tem que usar aquele nome pra gravar?

File arquivo; arquivo = new File(n);

Devo estar fazendo uma baita cavalisse…
Eu posso continuar usando o File pra isso?
Pra ler eu tbm nao sei como fazer, mas acredito que seja quase da mesma forma que pra gravar.

Valeu!!
Ajudou bastante. Se puder dar essa mao a mais!

Obrigado!

Foi mal galera. Deu certo.

Minha cavalisse era que minha variavel do tipo Scanner tava com aspas

Scanner leia = new Scanner("System.in");

Sacanagem!!

Obrigado. Essa foi demais.
Valeeu!!