Utilizando a classe Scanner, qual método é necessário pra se capturar os dados de apenas um campo especifico?
Nesse caso o campo do endereço.
E como faria se fosse necessario pegar o campo do cpf?
Utilizando a classe Scanner, qual método é necessário pra se capturar os dados de apenas um campo especifico?
Nesse caso o campo do endereço.
E como faria se fosse necessario pegar o campo do cpf?
Da maneira que este trecho de arquivo que você mandou , acredito que você deva saber qual o layout de arquivo está sendo usando , então neste caso séria muito mais simples você capturar com substring .
Ou uma outra solução você colocar no seu arquivo um deleimitador para percorrer e capturar o endereço pela classe StringTokenizer.
Sorte? :lol:
O que você vai ter que procurar é um padrão. Pode ser que o tamanho dos campos seja fixo e entre eles exista um espaço. Nesse caso, substring neles.
Pode ser também que esse “espaço” na verdade seja um TAB. Aí, tokenizer neles. Talvez criar (e aí é mais chato) um método por tipo de campo.
Cada “registro” tem 2 linhas mesmo? Não me parece tão difícil assim, é só procurar o padrão.
boa sorte,
otávio
Você precisa montar uma expressão regular, que permita que o seu scanner navegue pelos campos.
Como é a forma que esses campos devem ser divididos?
Você também pode obter resultador similares com o Pattern e o Matcher. Mas também terá que lidar com regex. Existem alguns tutoriais de expressões regulares na net. Você pode procurar por eles.
Eu acho melhor do que usar o StringTokenizer. Deixa um código mais limpo.
[quote=ViniGodoy]Você precisa montar uma expressão regular, que permita que o seu scanner navegue pelos campos.
Como é a forma que esses campos devem ser divididos?
[/quote]
Cada arquivo tem apenas uma linha. isto é cada registro possui uma linha no arquivo de dados.
É que aqui no post não dá pra colocá-los todos em uma linha.
As informações abaixo representam apenas um registro no arquivo.
E cada campo é separado do outro por um espaço em branco.
010000135 91522 91522 RADAR-REV. AUTOMOVEIS ARAPIRACA LTDA J 240594851 12440038000164AV. GOV. LAMENHA FILHO 195 5730145 JD.TROPICAL ARAPIRACA AL03112006 5221499 5302948 5212148 00 9
mas pelo que tenho percebido, as vezes o campo de endereço vem logo após uma sequencia de números, e não separado por um espeço em branco.
Como é o caso do exemplo abaixo:
gp7junior,
É você que gera esse arquivo? Se for, já pensou em salva-lo no formato CSV?
Fica bem mais fácil.
[quote=fsquadro]gp7junior,
É você que gera esse arquivo? Se for, já pensou em salva-lo no formato CSV?
Fica bem mais fácil.
[/quote]
Infelizmente nao sou eu que gero.
A concessionaria só gera o arquivo no formato .txt