[Resolvido]Ler caracteres de um arquivo TXT

5 respostas
P

Ola a todos, eu tenho um arquivo txt com dados na seguinte estrutura:

88.010-0201,00 DEODORO FLORIANOPOLIS SCCENTRO
88.010-0301,00 JERONIMO COELHO FLORIANOPOLIS SCCENTRO
88.010-0401,00 ALVARO DE CARVALHO FLORIANOPOLIS SCCENTRO
88.010-0508,00 FAGUNDES FLORIANOPOLIS SCCENTRO
88.010-05011,00 PIO XII FLORIANOPOLIS SCCENTRO

que são repectivamente, CEP, Rua, Cidade, Estado, e Bairro e preciso pegar esses dados e armazenar em um BD em campos semparados por, campo por isso não poderei usar o readLine().

Alguém pode me ajudar a ler um campo de cada vez no TXT?

até mais

5 Respostas

felipedamiani
Scanne scanner = new Scanner(new FileReader(new File("arquivo.txt")));

while (scanner.hasNext()) {
	String line = scanner.nextLine();
	String cep = line.substring(0,9);
	...
}

só ir parseando o resto da string line e pegando os outros valores.

gpd38

Não sei iria servir para vc mas da uma olhada no comando split()

felipedamiani

O split poderia ser usado se tivesse um delimitador em casa informação, como um “;” por exemplo… ai ficaria

line.split(";");

Mais não é o caso.

Só acrfescentando ao exemplo acima, depois de pegar o cep, vc deve se basear no caractere ’ ’ para fazer a divisão das informações…
pega da posição 9 da linha até a primeira ocorrencia do caractere ’ ',
depois pega a ultima palavra, separa os dois primeiros que são estado e o restante para o bairro, e o que sobrar é endereço.

abraço

Allan_Barcelos

É como o pessoal falo cara, usa o metodo split, aqui a baixo tem um exemplo de como eu fiz em um trabalho:

public void leFilmes() throws OverflowException {
		
	Filmes f;
    	String nome = null;
    	String[] linha;
    	String genero = "";
    	int ano = 0;
    	int locacao = 0;
    	
    	
    	String f_name = JOptionPane.showInputDialog("Digite o endereço onde esta o arquivo filmes.txt");

        try {

            FileReader fr = new FileReader(f_name);
            BufferedReader in = new BufferedReader(fr);

            while (in.ready() == true) {
            	
                linha = in.readLine().split(";");
            	
                for (int i = 0; i < linha.length; i++) {
                	
                	nome = linha[2].trim();
                	genero = linha[0].trim();
                	locacao = Integer.parseInt(linha[3].trim());
                	ano = Integer.parseInt(linha[1]).trim();
                	
                	}
                
                f = new Filmes(genero, nome, ano, locacao);
                filmesLocadora.insert(f);
                
                }
            
            in.close();

        }catch (FileNotFoundException e) {
           e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        
        
    }

tu pode mudar o .split(";") para .split(" ")

Esse é um trecho de um trabalho que eu fiz, em que tinha que ler um arquivo.txt e passar as informações para o atributo filmesLocadora.

P

vlww rapaziada…deu certo…

Criado 6 de maio de 2010
Ultima resposta 6 de mai. de 2010
Respostas 5
Participantes 4