1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Adicionar nova linha em Ficheiro - Netbeans & Java

Discussão em 'Programação' iniciada por Rexobias, 29 de Dezembro de 2008. (Respostas: 7; Visualizações: 1509)

  1. Rexobias

    Rexobias Power Member

    Bem malta, estou a criar um pequeno exemplo/teste de escrita em ficheiros que será mais tarde implementado num programa. Actualmente consigo escrever no ficheiros usando o seguinte código.

    Código:
        
    String nome = "Joaquim"; 
    int idade = 22;
    String curso = "Matemática";
    String s = nome+"|"+idade+"|"+curso;
    FileWriter ficheiro = new FileWriter("User.txt");    
    ficheiro.write(s); 
    ficheiro.close(); 
    
    O problema é que se eu quiser adicionar um novo registo (executar uma segunda vez o código), não consigo. O conteudo do ficheiro é substituido pelo conteudo das novas variaveis que formam a String s. Como poderi adicionar novos registos para que obtenha um registo por linha?!
     
  2. RS

    RS Power Member

    Experimenta:


    Código:
    String nome = "Joaquim"; 
    int idade = 22;
    String curso = "Matemática";
    String s = nome+"|"+idade+"|"+curso;
    FileWriter ficheiro = new FileWriter("User.txt", [B]true[/B]);    
    ficheiro.write(s); 
    ficheiro.close();
     
  3. Rexobias

    Rexobias Power Member

    Já tinha descoberto essa solução, mas de qualquer maneira obrigado. Mesmo assim continuo a ter um problema. Pretendia que os registos fossem guardados no ficheiro do seguinte modo:

    Código:
     
    Joaquim|22|Matemática
    Maria|23|Ciencias
    Francisco|20|Literatura
    
    Infelizmente, com o código actual fica assim:

    Código:
    Joaquim|22|MatemáticaMaria|23|CienciasFrancisco|20|Literatura
     
  4. h4des

    h4des Power Member

    Usa String s = nome+"|"+idade+"|"+curso+"\n"; em vez de String s = nome+"|"+idade+"|"+curso;
     
  5. OubeLa

    OubeLa Power Member

    Isso deve-se resolver com um "\n" ao adicionar cada linha.

    Código:
    String nome = "Joaquim"; 
    int idade = 22;
    String curso = "Matemática";
    String s = nome+"|"+idade+"|"+curso+"\n";
    FileWriter ficheiro = new FileWriter("User.txt", [B]true[/B]);    
    ficheiro.write(s);
    ficheiro.close();
    
     
  6. RS

    RS Power Member

    Código:
    String s = nome+"|"+idade+"|"+curso[B]+"\n"[/B];
    Podes introduzir um caracter de mudança de linha no final de cada entrada com o "\n"

    Ou usar outra classe pra escrever em ficheiros (que é coisa que não falta)

    EDIT: lol 3 respostas em simultâneo é muita fruta.
     
  7. Rexobias

    Rexobias Power Member

    Sabia que isso dava no C, e por isso testei em Java, mas não funcionou :S
     
  8. Corpsegrinder

    Corpsegrinder Banido

    Não sei o que estou para aqui a dizer, mas tenta criar essa string num StringBuffer com \n's e afins e depois convertes o stringbuffer para string.

    StringBuffer.append("blabalblablalbal") para ires concatenando.
     

Partilhar esta Página