GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Localizar palavra no arquivo texto


#1

Bom dia galera, nois de novo!!! :lol:

preciso localizar uma TAG dentro de um html e pegar o valor que vem depois do sinal de "="
o efeito seria o mesmo dos editores de texto nas ferramentes de LOCALIZAR.

acho que abrindo o html através do "IO" e localizando a Tag eu consiga resolver! (acho)

tem alguma maneira de localizar algo dentro de um arquivo texto,
sem precisar passar linha por linha e letra por letra???


#2

Cara, isso tu consegue resolver facilmente com expressões regulares.

Existe um pacote no JavaSE especial para isto java.util.Regex.

É sempre bom ter conhecimento de expressões regulares, caso não conheça, http://guia-er.sourceforge.net

:thumbup:


#3

Olá brunohenrique
Como você, eu estou aprendendo Java também, mas posso te ajudar nesse assunto.
Passei o domingo desenvolvendo um banco de dados em txt. no sábado tive a idéia de implementar um banco de dados utilizando a manipulação de String em arquivos txt.
O código foi feito, funciona até lagal. Essa classe que tô te passando é a classe de leitura que também faz a busca nas mesma. Resolvi fazer assim pois não estava conseguindo passar os dados lidos para outra classe.
Mas está funcionando e espero que vc entenda.

bom, vamos lá.

CLASSE PARA FAZER A LEITURA E BUSCA DOS DADOS

Espero que te ajude em algo
qualquer coisa me avisa
ah, outra coisa. há um método da classe String qe faz a leitura e busca de arquivo. porém esse modo eu acho mais fácil pelo programa mexer com cada caractere do seu arquivo, podendo vc comparar e buscar o que vc quiser dentro do seu arquivo.
Um abraço


#4

vhuzalo, valeu cara
da hora esse negocio de Expressoes Regulares, nunca tinha visto, e até por isso estou tendo dificuldades para criar a minha primeira expressão!

se alguem puder me ajudar?!

no meu arquivo html tem uma instrução dentro de uma tag.

eis a instrução:
"&ieGraficaFabricante=647250523112&ieContribuinte=260060785118&"

tenho que localizar "ieContribuinte" e pegar este número que esta logo após o sinal de "="

esta instrução se repete no arquivo htm,
preciso gravar no BD este número, para depois fazer uma comparação com outro htm semelhante, para ver
qual não está cadastrado ainda...

se alguém puder dar uma forcinha na montagem da ER eu agradeço


#5

para vc montar sua ER, primeiro vc tem q saber quais são as regras desse número, como se sempre é número, qual o tamanho dele...

Se vc não quiser percorrer todos os caracteres da linha lida, segue uma maneira (tosca!) de pegar o código:

		
String linha = "&ieGraficaFabricante=647250523112&ieContribuinte=260060785118&";
final int tamanhoCodigo = 12;
String s = "ieContribuinte";
int pos = linha.indexOf(s) + 1;
String saida = linha.substring(pos + s.length(), pos + s.length() + tamanhoCodigo);
System.out.println(saida);

flw!


#6