Escrever uma string em ficheiro

8 respostas
D

Boa noite… alguem me poderia dar uma pequeno exemplo de um programa que escrevesse uma string (por exemplo “Estatua de Viseu”) num ficheiro qualquer em JAVA? Grato pela atenção…

8 Respostas

davidbuzatto
import java.io.*;

public class TesteEscritaArquivo {

    public static void main( String[] args ) {

        try {

            // cria um FileWriter, associado ao arquivo teste.txt
            // a classe FileWriter é usada para escrever em arquivos de texto
            FileWriter fw = new FileWriter( new File( "teste.txt" ) );

            // escreve o conteúdo...
            fw.write( "Estatua de Viseu" );

            // fecha o FileWriter, dando um flush automático
            fw.close(); 

        } catch ( IOException exc ) {
            exc.printStackTrace();
        }

    }

}

[]´s

D

Mt Obrigado pela ajuda. Cumprimentos

davidbuzatto

Disponha.

[]´s

D

Eu passo a explicar o problema mais em concreto: Tenho uma classe Estradas que tem dois filhos: o que neste caso interessa é EstradaNacional.

public EstradaNacional(float distancia,String nome,Cidade cidadeA, Cidade cidadeB,int estado, ArrayList listPontoInt){
super(nome,distancia,cidadeA,cidadeB);

Como pode reparar o ultimo parametros do construtor é um arrayList que contem uma ou mais strings como elementos:

public PontoInteresse(String nome){ this.nome = nome; }

o que pretendo é escrever num ficheiro binario toda a informação ( como a distancia, o nome…) e para alem disso todos os elementos do ArrayList.
Para ja tenho o seguinte codigo:

try { for(int i=0;i<Estradas.size();i++){ write.writeObject(Estradas.get(i)); if(Estradas.get(i) instanceof EstradaNacional){ temp = ((EstradaNacional)Estradas.get(i)); for (int k=0;k<temp.getListPontoInt().size();k++){ //AQUI PRECISO DE ESCREVER NO FICHEIRO, TODOS OS ELEMENTOS DO ARRAYLIST QUE DIZEM RESPEITO Á ESTRADA I } } } } catch (Exception e) { System.out.println ("Nao conseguiu escrever em "+nome+". Exception: "+e+"\n"); }

D

Não sei se estou a exagerar no que pedi. É a primeira vez que peço ajuda num forum. Desculpa abusar da sua boa vontade.

davidbuzatto

Se suas classes EstradaNacional, Cidade e PontoInteresse implementarem a interface Serializable, basta você gravar o objeto EstradaNacional diretamente no arquivo, usando o writeObject que você já está usando.

Outra coisa, como está começando a postar agora, recomendo que você de uma olhada aqui, assim você vai aprender a usar a tag “code” para postar código fonte nos seus posts.

[]´s

D

Tinha me esquecido de implementar interface Serializable na classe PontoDeInteresse. Adicionei isso e felizmente ja funciona. Mais uma vez obrigado pela ajuda.
Cumprimento.

davidbuzatto

:wink:

[]´s

Criado 27 de dezembro de 2010
Ultima resposta 27 de dez. de 2010
Respostas 8
Participantes 2